博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HTML5中的拖放
阅读量:5157 次
发布时间:2019-06-13

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

1.实现拖放的步骤

   ①将对象的属性设置为可拖放,即draggable=“true”

   ②编写有关拖放事件的处理函数。

2.使用dataTransfer对象

   dataTransfer对象是事件对象的一个属性,用于从被拖拽元素向放置目标传递字符串格式的数据。因为是事件对象的属性,在拖放事件的事件处理程序中访问dataTranfer对象

   ①dataTransfer的属性

       dropEffect属性:表示拖放操作的视觉效果,该效果必须在用effectAllowed属性指定的允许的视觉效果的范围内,允许指定的值为none、copy、link、move。

       effectAllowed属性:用来指定当元素被拖放时所允许的视觉效果,可以指定的值为none、copy、copyLink、copyMove、link、linkMove、move、all.

       type属性:存入数据的种类,字符串的伪数组。

   ②dataTransfer的方法

       void clearData方法:清除dataTransfer对象中存放的数据,如果省略参数,则清除全部数据。

       void setData方法:向dataTransfer对象内存入数据。

       DOMString getData方法:从dataTransfer对象中读取数据。

       void setDragImage方法:用img元素设置拖放图标

  setData()方法在拖放开始时向dataTransfer对象中存入数据,它用type属性来指定数据MIME类型,而getData()方法在拖动结束时读取dataTransfer对象中的数据。clearData()方法可以用来清除dataTransfer对象内的数据。

3.设定拖放时的视觉效果

   dropEffect属性与effectAllowed属性结合设定拖放时的视觉效果。

    effectAllowed属性表示当一个元素被拖动时所允许的视觉效果,一般在ondragstart事件中设定,允许设定的值为none、copy、copyLink、copyMove、link、linkMove、move、all。

    dropEffect属性表示实际拖放时的视觉效果,一般在ondragover事件中指定,允许设定的值为none、copy、link、move。

 

    dropEffect属性所表示的实际视觉效果必须在effectAllowed属性所表示的允许的视觉效果范围内

     规则:

     如果effectAllowed属性设定none。则不允许拖放元素。

     如果dropEffect属性设定为none,则不允许被拖放到目标元素中。

     如果effectAllowed属性设定为all或不设定,则dropEffect属性允许被设定为任何值,并且按指定的视觉效果进行显示。

     如果effectAllowed属性设定为具体效果,dropEffect属性也设定了具体视觉效果,则两个具体效果值必须完全相等,否则不允许将被拖放元素拖放到目标元素中。

 

4.自定义拖放图标

5.实例:选择图形

    

选择颜色

红色

绿色

蓝色

 

     

     

转载于:https://www.cnblogs.com/sunli0205/p/6262282.html

你可能感兴趣的文章
跨域问题整理
查看>>
[Linux]文件浏览
查看>>
64位主机64位oracle下装32位客户端ODAC(NFPACS版)
查看>>
获取国内随机IP的函数
查看>>
今天第一次写博客
查看>>
江城子·己亥年戊辰月丁丑日话凄凉
查看>>
IP V4 和 IP V6 初识
查看>>
Spring Mvc模式下Jquery Ajax 与后台交互操作
查看>>
(转)matlab练习程序(HOG方向梯度直方图)
查看>>
『Raid 平面最近点对』
查看>>
【ADO.NET基础-数据加密】第一篇(加密解密篇)
查看>>
C语言基础小结(一)
查看>>
STL中的优先级队列priority_queue
查看>>
UE4 使用UGM制作血条
查看>>
浏览器对属性兼容性支持力度查询网址
查看>>
OO学习总结与体会
查看>>
虚拟机长时间不关造成的问题
查看>>
校门外的树2 contest 树状数组练习 T4
查看>>
面试整理:Python基础
查看>>
Python核心编程——多线程threading和队列
查看>>