【发布时间】:2017-03-24 04:58:26
【问题描述】:
html是
<div id="test" draggable='true'></div>
我可以拖动这个 div,但是当我放下元素时,会有一个动画让元素回到原来的位置
如何禁用此动画? 我在 dragend 事件中使用了 preventDefault(),它不起作用?
我的英文不太好,非常感谢
【问题讨论】:
html是
<div id="test" draggable='true'></div>
我可以拖动这个 div,但是当我放下元素时,会有一个动画让元素回到原来的位置
如何禁用此动画? 我在 dragend 事件中使用了 preventDefault(),它不起作用?
我的英文不太好,非常感谢
【问题讨论】:
为了防止动画,您需要触发drop 事件。要触发drop 事件,您需要在dragover 的处理程序中调用preventDefault()。
document.addEventListener('dragover', function(e) { e.preventDefault() })
MDN 文档中的示例显示了相同的内容:https://developer.mozilla.org/en-US/docs/Web/Events/drop#Example
一篇描述 HTML5 拖放 API 怪癖的旧博文:https://www.quirksmode.org/blog/archives/2009/09/the_html5_drag.html
【讨论】: