把拖动的数据存入DataTransfer(setData()方法)。DataTransfer对象专门用来存储拖放时要携带的数据,它可以被设置为拖放事件对象的dataTransfer属性。
setData有两个参数:
第一个参数为携带数据的数据种类的字符串,只能填入类似”text/plain” 或”text/html”的表示MIME类型的文字,不能填入其他文字。
第二个参数为要携带的数据
preventDefault()
必须在dragend和dragover事件内调用“事件对象.preventDefault()”方法。因为在默认情况下,拖放的目标元素是不允许接受元素的,为了把元素拖放到其中,必须把默认处理给关掉
目标元素使用getData()方法
目标元素接受到被拖放的元素后,执行getData()方法从DataTransfer 那里获得数据。
getData()方法的参数为setData()方法中指定的数据类型
注意!
要实现拖放过程,还必须在目标元素的drop事件中关闭默认处理(拒绝被拖放),否则目标元素不能接受被拖放的元素。
要实现拖放过程,还必须设定整个页面为不执行默认处理(拒绝被拖放),否则拖放处理也不能被实现。因为页面是先于其他元素接受拖放的,如果页面拒绝拖放,那么其他页面上的元素也不能接受拖放。
时间: 2024-10-05 04:33:12