我在使用html5拖放时遇到了一点问题。我看不出有什么简单的办法摆脱它。基本上我有一些“盒子”,里面有一些其他的html元素。父框是可拖动的,它们可以相互放置。
我在正文上绑定dragover
事件以处理整个页面上的拖放。问题是,当您拖动框时 - 有时会在子元素上触发事件,而父元素根本不会收到此事件。
有没有一种简单的方法可以防止这种情况发生?
基本上,我希望鼠标在目标框区域内时立即触发 dragover 事件。我知道解决这个问题的几种方法,但它们真的很丑,我想知道是否有一些简单的东西。
谢谢你的想法
我在代码中所做的简短版本:
document.addEventListener('dragenter', function(e) {
if (e.target.className == 'candrophere')
// cancel out "e" to allow drop
}, false);
但在我的情况下,子元素几乎占据了整个 '.candrophere' 框,因此事件几乎永远不会在正确的目标上触发(尤其是当我更快地移动鼠标时)