繁体   English   中英

在IE9中拖放HTML

[英]HTML drag and drop in IE9

我尝试拖放HTML。 除了IE9之外,它在所有浏览器中都运行良好(不需要低于IE9)。 IE9中未触发ondrop事件。

任何帮助? 这是我的代码。

的jsfiddle

提前致谢。

如果更换它会工作diva标签。 但是,您还应该进行其他一些更改,首先通过在onclick事件中返回false来确保a标签不是可点击的链接:

<a class="div123" href="#" draggable="true"
 ondragstart="handleDragStart(event)"
 ondrop="handleDrop(event)"
 ondragover="dragoveHandler(event)"
 onclick="return false;">
    HTML5 drag and drop
</a>

其次,IE9不接受setDatatext/plain参数,而是使用Text代替或者在try...catch添加数据。 此外,您应该确保您添加的数据实际上是文本:

e.dataTransfer.setData("Text", "" + $(e.target).index());

最后你的handleDrop函数需要preventDefault / return false ,否则删除链接( a元素`)的默认操作是导航到被删除的URL:

function handleDrop(e) {
    alert($(e.target).index());
    if (e.preventDefault) {
        e.preventDefault(); // Necessary. Stops redirect.
    }
    return false;
}

这是一个可以在IE9中运行的代码的jsFiddle

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM