温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

学习html5拖动drag

发布时间:2020-07-18 20:20:45 来源:网络 阅读:258 作者:haotianaoxiang 栏目:移动开发
 主要就是几个事件函数及属性
被拖动元素:draggable 属性设置为true
           ondragstart(event)当元素被拖动时发生什么事
例如可以把被拖动元素的id存储事件中 ev.dataTransfer.setData("name","value");value--ev.target.id
 
元素被放置
ondragover(ev) function 这个函数用来阻止浏览器的默认行为ev.preventDefault()
ondrop()元素被放置var id = ev.dataTransfer.getData("name");
ev.target.appendChild(document.getElementById(id))  ev.target是目标事件对象
要是去实现来回的拖动只要在目标对象上都加入ondragover ondrop 句柄就好了

 

<!DOCTYPE HTML>

<html>

<head>

<title></title>

<meta charset="utf-8"/>

<style>

#div1{width:200px; height:200px;border:solid 1px gray;}

#div2{width:200px; height:200px;border:solid 1px gray;}

img{border:solid 1px red;}

</style>

</head>

<div id="div1" ondragover="allowDrag(event)" ondrop="dropImg(event)"></div>

<div id="div2" ondragover="allowDrag(event)" ondrop="dropImg(event)">

<img id="img1" src="22.gif" draggable="true" ondragstart="dragImg(event)"/>

</div>

<script>

function dragImg(ev){

ev.dataTransfer.setData("heh",ev.target.id);

}

function allowDrag(ev){

ev.preventDefault();

}

function dropImg(ev){

ev.preventDefault();

var data = ev.dataTransfer.getData("heh");

//console.log(document.getElementById(data));

ev.target.appendChild(document.getElementById(data));

}

</script>

<body>

</body>

 

 

 

 

 

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI