html drag 例子,html5 drag事件用法

本文详细介绍了HTML5的drag事件,包括ondragstart、ondrag、ondragend等7个事件及其顺序。dataTransfer对象用于在拖放过程中传递数据,支持设置dropEffect和effectAllowed属性以控制拖放行为。此外,还讲解了如何自定义拖放图标和处理数据。拖放功能在现代浏览器中广泛支持,具有良好的兼容性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

drag事件用法

html5的drag事件总共有 7 个,还有一个事件传递对象

拖曳目标对象

ondragstart 拖曳开始

ondrag 拖曳中

ondragend 拖曳结束

释放对象

ondragenter 进入释放目标

ondragover 在目标中拖曳

ondragleave 离开释放目标

ondrop 释放

各个事件的触发顺序

ondragstart -> ondrag -> ondragenter -> ondragover -> ondragleave -> ondragend -> ondrop

事件传递对象 dataTransfer

用来在拖曳过程中传递数据。

对象属性:

dropEffect:设置或返回拖放目标上允许发生的拖放行为。如果此处设置的拖放行为不再effectAllowed属性设置的多种拖放行为之内,拖放操作将会失败。该属性值只允许为“null”、“copy”、“link”和“move”四值之一。

effectAllowed:设置或返回被拖动元素允许发生的拖动行为。该属性值可设为“none”、“copy”、“copyLink”、“copyMove”、“link”、“linkMove”、“move”、“all”和“uninitialized”。

items:该属性返回DataTransferItems对象,该对象代表了拖动数据。

types:该属性返回一个DOMStringList对象,该对象包括了存入dataTransfer中数据的所有类型。

对象方法:

setData(format,data):将指定格式的数据赋值给dataTransfer对象,参数format定义数据的格式也就是数据的类型,data为待赋值的数据

getData(format):从dataTransfer对象中获取指定格式的数据,format代表数据格式,data为数据。

clearData([format]):从dataTransfer对象中删除指定格式的数据,参数可选,若不给出,则为删除对象中所有的数据。

addElement(element):添加自定义图标

setDragImage(element,x,y):设置拖放操作的自定义图标。其中element设置自定义图标,x设置图标与鼠标在水平方向上的距离,y设置图标与鼠标在垂直方向上的距离。

浏览器支持

Internet Explorer 9+, Firefox, Opera, Chrome, 和 Safari 支持拖动。

注意:Safari 5.1.2不支持拖动;在拖动元素时,每隔 350 毫秒会触发 ondragover 事件。

支持度很高,无需担心兼容性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值