码迷,mamicode.com
首页 > Web开发 > 详细

HTML5——拖放

时间:2016-05-06 15:28:23      阅读:210      评论:0      收藏:0      [点我收藏+]

标签:

HTML5拖放

1、HTML5拖放

拖放(Drag和drop)是HTML5标准的组成部分。

2、拖动开始:

ondragstart:调用了一个函数,drag(event),它规定了被拖动的数据

3、设置拖动数据

setData():设置被拖数据的数据类型和值。

4、放入位置:

ondragover:事件规定在何处放置被拖动的数据。

5、放置:

ondrop:当放置被拖放数据时,会发生drop事件

总结:

在拖动目标上触发事件(源元素):

ondragstart:用户开始拖动元素时触发
ondrag:元素正在拖动时触发
ondragend:用户完成元素拖动后触发

释放目标时触发的事件

ondragenter:当被鼠标拖动的对象进入其容器范围内时触发此事件
ondragover:当某被拖动的对象在另一对象容器范围内拖动时触发此事件
ondragleave:当被鼠标拖动的对象离开其容器范围内时触发此事件
ondrop:在一个拖动过程中,释放鼠标键时触发此事件

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>drop</title>
<style>
.box{
width: 400px;
height: 400px;
}
#box1{
float: left;
background-color: #CCCCCC;
}
#box2{
float: left;
background-color: aqua;
}
</style>
<script src="app.js"></script>
</head>
<body>
<div id="box1" class="box"></div>
<div id="box2" class="box"></div>
<img id="img1" src="1.PNG" alt="">
<div id="msg"></div>
</body>
</html>

app.js

var box1Div, msgDiv, img1, box2Dib;
 
window.onload = function () {
box1Div = document.getElementById("box1");
msgDiv = document.getElementById("msg");
img1 = document.getElementById("img1");
box2Div = document.getElementById("box2");
box1Div.ondragover = function (e) {
e.preventDefault();
}
box2Div.ondragover = function (e) {
e.preventDefault();
}
 
img1.ondragstart = function (e) {
e.dataTransfer.setData("imgId","img1");
}
 
box1Div.ondrop = dropImghandler;
box2Div.ondrop = dropImghandler;
 
 
function dropImghandler(e) {
//创建节点
var img = document.getElementById(e.dataTransfer.getData("imgId"));
e.target.appendChild(img);
}
}
 
function showObj(obj) {
var s = "";
for(var k in obj){
s+=k+":"+obj[k]+"<br/>";
}
msgDiv.innerHTML = s;
}

HTML5——拖放

标签:

原文地址:http://blog.csdn.net/tangxiaolang101/article/details/51319986

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!