在 HTML5 中,拖放是标准的一部分,任何元素都能够拖放。
全局属性draggable :标签设置draggable=true后,就能够被拖拽:
单纯地给元素加上draggable属性,也只能在鼠标按住、拖拽、放开时看到特效,它仅仅证明该元素是可以被拖拽的。
要实现真正的拖拽删除文件,拖拽上传文件等等效果,必须结合Drag & Drop API开发。HTML5提供专门的拖拽与拖放的API
举个栗子
在实现网页拖拽丢弃的特效的话,首先要学习Drag and Drop API提供的1个对象和4个事件
DataTransfer对象用来保存,通过拖放动作,拖动到浏览器的数据。
提供setData方法为一个给定的类型设置数据;getData方法根据指定的类型检索数据。
先来做个小练习,熟悉DataTransfer对象怎么结合拖拽事件使用
functiondrag(ev) {
ev.dataTransfer.setData("text", ev.target.id);
}
已设置一张图片为被拖拽元素,设置被拖数据的数据类型为“text”、值是被拖拽元素的id-->"drag1"
图片可以拖拽了,但是将它安放何处呢?