HTML5 拖放 (Drag 和 Drop)
必须设置该元素的 draggable 属性为true 将允许拖拽 属性为false 不允许拖拽
img元素和a元素 默认都可以拖拽 (默认设置为draggable 为true)
拖放事件
被拖拽的元素称为源对象
经过的元素称为过程对象
到达的元素称为目标对象
源对象的事件
dragstart: 源对象开始拖放
drag : 源对象拖放过程
dragend: 源对象拖放结束
过程对象
dragenter:源对象开始进入过程对象范围内
dragover:源对象在过程对象范围内移动。
dragleave:源对象离开过程对象的范围。
目标对象
drop:源对象被释放时触发。
凡是在页面内都认为是过程对象,所以要阻止document的dragover的默认行为
document.addEventListener("dragover",function(e){
e.preventDefault();
})
dataTransfer 对象
在所有拖放事件中提供了一个数据传递对象 dataTransfer,用于在源对象和目标对象间传递数据。
dataTransfer 对象不支持IE
setData()
该方法向 dataTransfer 对象中存入数据,接收两个参数