dataTransfer.setData在IE9中不起作用
我用jquery将一些代码绑定到dragstart
事件,如下所示:
$new.on('dragstart', function(event) { event.originalEvent.dataTransfer.setData("text/html", $new.clone().wrap('').parent().html()); });
$new
是一个jquery对象。 目的是将拖动元素的html附加到事件,以便我可以在删除时创建副本。 Chrome甚至不需要此活动。 添加此代码时,Firefox可以运行。 但IE9抛出SCRIPT65535: Unexpected call to method or property access.
当事件被触发时。 这是一个jsFiddle: http : //jsfiddle.net/j52EM/3/
我如何为IE工作?
在ie中根据文档只有两个参数IE9不接受text / html作为格式。 使用’文字’
这是一个样本,即根据msdn网站:
function InitiateDrag() // The setData parameters tell the source object // to transfer data as a URL and provide the path. { event.dataTransfer.setData("URL", oImage.src); } function FinishDrag() // The parameter passed to getData tells the target // object what data format to expect. { sImageURL = event.dataTransfer.getData("URL") oTarget.innerText = sImageURL; }
setData
方法expect String数据类型不是Number
setData('text',1)
错误
setData('text',''+1)
是正确的
- 单击“使用jQuery”选择/取消选择“文本”
- 在Edge模式下,JQuery tablesorter pager插件无法与IE11一起正常工作
- 本地html文件AJAX调用和jQuery Woes
- Internet Explorer:当目标DOM元素在DOM中移动时,hover状态变为粘滞状态
- Internet Explorer 9和javascript变量范围问题
- 这个CSS不应该在IE9中工作吗?
- Javascript“window.open”代码在Internet Explorer 7或8中不起作用
- 提交按钮不会在IE上触发jQuery bind’ed提交事件
- 为什么这个JavaScript在IE中导致“权限被拒绝”错误