dragcenter/dragleave可防止发射落弹

dragenter/dragleave prevents drop from firing

本文关键字:发射 可防止 dragleave dragcenter      更新时间:2023-09-26

我的问题是,当我使用draginterdraglive时,drop-事件不再触发。当我将拖动中心更改为拖放时,它就起作用了。但我想通过使用drageneter来减少触发事件。有什么想法吗?

$("#drop")
  .on("drop", function(event) {
    $("#debug").append("drop'n")
   })
  .on("dragenter", function (event) {
    $("#debug").append("dragover'n")
   })
  .on("dragleave", function (event) {
    $("#debug").append("dragleave'n")
   })
  .on("dragover", function (event) {
    event.preventDefault();  
    event.stopPropagation();
   });

我还尝试用event.preventDefault()event.stopPropagation()取消默认事件,但没有改变任何内容。

这是一个简化的代码:https://jsfiddle.net/7oun2gza/

编辑:刚刚自己找到了解决方案。我必须禁用拖拽中的默认事件才能拍摄掉落-事件。修复了上面的代码。

问题是,我必须禁用默认的dragov才能触发drop事件。我修正了问题中的代码。