刚开始遇到这个需求,想偷懒直接用别人写好的东西往里套。花了一上午的时间效果还是不好,最后还是决定自己动手。
首先,拖放是一种常见的特性,在H5中,任何元素都能被拖放。当把元素的 draggable 属性设置为true时,即可拖动。
而且图片和链接默认为true,不需要重复设置。
drag
当元素或选择的文本被拖动时触发drag事件/每几百毫秒。
dragstart
用户开始拖动或选择文本时会触发此事件,通常会调用一个函数,drag(event),它规定了被拖动的数据。
dataTransfer.setData()方法设置被拖数据的数据类型和值;
function drag(ev){
ev.dataTransfer.setData("text",ev.tgarget.id);
}
dragend
当拖动操作结束时(通过释放鼠标按钮或按下转义键)将触发该事件。
dragover
当在有效的放置目标上拖动元素或文本选择时(每几百毫秒),触发此事件。规定了在何处放置被拖动的数据。默认情况下,是无法将数据或元素放置到其他元素中去的,如果需要设置允许,必须阻止对元素的默认处理方式。
event.preventDefault();
dragenter
当拖