博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HTML 5 拖放(Drag 和drop)
阅读量:5322 次
发布时间:2019-06-14

本文共 1218 字,大约阅读时间需要 4 分钟。

浏览器支持

Internet Explorer 9、Firefox、Opera 12、Chrome 以及 Safari 5。

1、把标签 draggable 属性设置为 true。

2、向标签添加ondragstart 属性调用了一个函数drag(event)。

    function drag(ev){

       ev.dataTransfer.setData("Text",ev.target.id);    }  //设置被拖数据的数据类型和值

3、向要拖放的位置(目标元素)标签添加ondragover属性调用一个函数allowDrop(event)。

    function allowDrop(ev){

       ev.preventDefault();} //避免浏览器对数据的默认处理

4、向要拖放的位置(目标元素)标签添加ondrop属性调用一个函数drop(event)。

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

    function drop(ev){

       ev.preventDefault(); //避免浏览器对数据的默认处理
       var data=ev.dataTransfer.getData("Text"); //获得被拖的数据。该方法将返回在 setData() 方法中设置为相同类型的任何数据。
       ev.target.appendChild(document.getElementById(data));  } //把被拖元素追加到目标元素中

5、示例如下:

<script type="text/javascript">

   function allowDrop(ev){
      ev.preventDefault(); }

   function drag(ev){

      ev.dataTransfer.setData("Text",ev.target.id); }

   function drop(ev){

      ev.preventDefault();
      var data=ev.dataTransfer.getData("Text");
      ev.target.appendChild(document.getElementById(data)); }
</script>

<div id="div1" οndrοp="drop(event)" οndragοver="allowDrop(event)">

  <img src="aa.png" draggable="true" οndragstart="drag(event)" id="drag1" />
</div>
<div id="div2" οndrοp="drop(event)" οndragοver="allowDrop(event)"></div>

执行如下:

我们可将图片来回拖放在div1和div2中。

 

转载于:https://www.cnblogs.com/LoveSuk/p/5287684.html

你可能感兴趣的文章
Maxim and Array CodeForces - 721D (贪心)
查看>>
MVC模式的原理
查看>>
第一阶段改进评论
查看>>
装饰器与lambda
查看>>
时间之外的往事
查看>>
C#中的反射 Assembly.Load() Assembly.LoadFrom()
查看>>
【2019/4/9】周进度报告
查看>>
mssql sqlerver 脚本 计算数据表的结余数的方法分享
查看>>
Redis无法获取资源(Could not get a resource from the pool)
查看>>
迁移环境或升级正常功能出bug常见原因
查看>>
大数乘法
查看>>
Jenkins权限管控
查看>>
elasticsearch 5.0安装使用的那些坑
查看>>
【sqlite】python备份数据库
查看>>
转:Can not issue data manipulation statements with executeQuery()错误解决
查看>>
详解C#委托,事件与回调函数(转)
查看>>
744. Find Smallest Letter Greater Than Target
查看>>
java实现二维码的生成.
查看>>
溃烂中的代码
查看>>
letecode [38] - Count and Say
查看>>