首页 > 编程 > HTML > 正文

HTML 5 拖放

2020-03-24 17:16:26
字体:
来源:转载
供稿:网友
var data=ev.dataTransfer.getData( Text ev.target.appendChild(document.getElementById(data)); /script /head body div id= div1 ondrop= drop(event) ondragover= allowDrop(event) /div img id= drag1 src= img_logo.gif draggable= true ondragstart= drag(event) width= 336 height= 69 / /body /html

亲自试一试

它看上去也许有些复杂,不过我们可以分别研究拖放事件的不同部分。


在上面的例子中,ondragstart 属性调用了一个函数,drag(event),它规定了被拖动的数据。

dataTransfer.setData() 方法设置被拖数据的数据类型和值:

function drag(ev)ev.dataTransfer.setData( Text ,ev.target.id);

在这个例子中,数据类型是 Text ,值是可拖动元素的 id ( drag1 )。


默认地,无法将数据/元素放置到其他元素中。如果需要设置允许放置,我们必须阻止对元素的默认处理方式。

这要通过调用 ondragover 事件的 event.preventDefault() 方法:

event.preventDefault()

var data=ev.dataTransfer.getData( Text ev.target.appendChild(document.getElementById(data));代码解释:
调用 preventDefault() 来避免浏览器对数据的默认处理(drop 事件的默认行为是以链接形式打开)通过 dataTransfer.getData( Text ) 方法获得被拖的数据。该方法将返回在 setData() 方法中设置为相同类型的任何数据。被拖数据是被拖元素的 id ( drag1 )把被拖元素追加到放置元素(目标元素)中

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

上一篇:HTML5 拖放

下一篇:HTML背景

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表