html ondrag事件未触发,Internet Explorer 9中不再触发事件ondragstart

博客探讨了HTML5拖放功能在Internet Explorer 8和9中的不完全支持问题,指出这些版本的IE浏览器不支持`draggable`元素属性。为了解决这个问题,文章提供了一个示例代码,通过添加链接并利用特定的事件绑定(如`selectstart`,`dragstart`,`drag`,`dragend`和`click`)来实现IE9及以下版本的兼容性。这种方法允许在旧版IE中实现基本的拖放功能。

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

robertc..

6

我打赌这在IE8中不起作用,因为IE8或IE9都不完全支持HTML5拖放,这只是在IE10 Developer Preview 2中添加的.HTML5 API基于IE5中的拖放实现,但存在一些差异.最有针对性的是,IE9以及以前不支持draggable元素属性 - IE9中唯一可以拖动的东西是默认可拖动的东西:文本选择,链接和图像.

因此,要在IE9(或IE8)中工作,您需要在HTML中添加一个链接(该链接必须具有href):

然后,您的JavaScript应该按预期工作,只需稍作修改:

$('#mydiv')

.bind('selectstart', function(e) {

// Prevent text selection

return false;

})

.bind('dragstart', function(e) {

e.originalEvent.dataTransfer.setData("Text", $(e.target).closest('div').attr('id'));

console.log('dragstart');

})

.bind('drag', function(e) {

console.log('drag');

})

.bind('dragend', function(e) {

console.log('dragend');

})

.bind('click', function(e) {

return false;

});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值