拖放
一、概述
1、拖放(Drag和drop)是HTML5标准的组成部分。
拖放是一种常见的特性,即将一个对象抓取后放置到指定位置,在HTML5中,任何元素都可以进行拖放的操作。
2、浏览器支持情况。
Internet Explorer 9、Firefox、Opera 12、Chrome以及Safari 5支持拖放,需要注意的是,在Safari 5.1.2中不支持拖放,由此可见,在编写拖放时,需要注意浏览器的兼容问题。
3、拖拽元素支持的事件
(1)ondrag-----应用于拖拽元素,整个拖拽过程都会使用;
(2)ondragstart------应用于拖拽元素,当拖拽开始时调用;
(3)ondragleave-----应用于拖拽元素,当鼠标离开拖拽元素时调用;
(4)ondragend-----应用于拖拽元素,当拖拽事件结束时调用。
4、目标元素支持的事件
(1)ondragenter-----应用于目标元素,当拖拽元素进入时调用;
(2)ondragover-----应用于目标元素,当停留在目标元素上时调用;
(3)ondrop-----应用于目标元素,当在目标元素上松开鼠标时调用;
(4)ondragleave-----应用于目标元素,当鼠标离开目标元素时调用。
二、拖放的步骤
step1:设置元素为可拖放:
使用draggable属性;
<!-- draggable="true" ; ---------使元素可以被拖动 -->
<img id="image" src="../../img/周震南.jpg" draggable="true" />
step2:拖动什么
使用ondragstart和setData()。ondragstart
属性调用了一个函数drag(event),它规定了被拖动的数据;dataTransfer.setData()方法设置了被拖动数据的数据类型和值。
// 设置允许在浏览器中将元素放在另一个元素中
function drag(ev){
console.log(ev)
/*通过dataTransfer来实现数据的存储和获取
setData(format,data)
format:数据的类型: text/html text/uri-list,
data:数据:一般来说是字符串值,
*/
ev.dataTransfer.