HTML5拖放效果的实现代码
拖放是一个常见的特性,在对象被抓取后被拖到另一个位置。
在HTML5中,拖放是标准的一部分,任何元素都可以拖放。
Internet Explorer 9 +,Firefox,Opera,Chrome和Safari支持拖动。
注:Safari 5.1.2不支持拖动。
例子:
拖放
# DIV1 {宽度:360px;身高:220px;padding: 20px;border: 1px solid黑;}
功能allowdrop(EV){
Ev.preventDefault();
}
函数拖动(EV){
ev.datatransfer.setdata(文本
}
功能下降(EV){
Ev.preventDefault();
VaR数据= ev.datatransfer.getdata(文本);
ev.target.appendchild(document.getelementbyid(数据));
}
首先,为了使元件拖动,拖动属性设置为true:
然后,当元素被拖动时会发生什么
在上面的例子中,该ondragstart属性调用一个函数,拖(事件),它指定的数据拖。
的datatransfer.setdata()方法设置的数据类型和数据值的拖:
功能阻力(EV)
{
ev.datatransfer.setdata(文本
}
在本例中,数据类型为文本
的ondraver事件指定在哪里拖动数据的地方。
默认情况下,不能将数据元素放置到其他元素中。如果需要设置允许放置,则必须防止元素的默认处理。
这是通过调用event.preventdefault()的ondraver事件的方法:event.preventdefault()
下拉事件发生在拖动的数据被放置时。
在上面的例子中,该产品属性调用一个函数,降(事件):
功能下降(EV)
{
Ev.preventDefault();
VaR数据= ev.datatransfer.getdata(文本);
ev.target.appendchild(document.getelementbyid(数据));
}
代码解释:
调用preventDefault()来避免数据浏览器的默认处理(下降的事件的默认行为是在链接的形式打开)
通过datatransfer.getdata是拖动的数据(文本)的方法,该方法将返回任何数据中同一类型的方法setData()。
拖动数据ID(drag1 )的拖元。
将拖放元素添加到布局元素(目标元素)中
拖着脚来回走:
如果你想在两个地方来回拖动,只需稍微修改上面的代码即可。
将代码更改为:
然后添加# DIV2的风格。
# DIV1,# DIV2 {宽度:360px;身高:220px;padding: 20px;border: 1px solid黑;}
这允许你来回拖放。
以上是本文的全部内容,希望能对您有所帮助,希望大家多多支持。