首页 > 解决方案 > 检测拖动的项目何时被拖出窗口。文档.ondragleave()?

问题描述

我正在尝试检测何时将 HTML 元素拖出文档并拖出窗口。但是,该dragleave事件会冒泡,因此document.documentElement.ondragleave会在拖动离开到页面边缘的路径中的每个元素时触发。似乎最后一个触发dragleave的元素是与页面接壤的子元素,而不是它document本身。

有谁知道如何解决这个问题?

相比之下,mouseleave

document.documentElement.addEventListener('mouseleave', (e) => {console.log(e)})

效果很好,完全符合我的需要。

document.documentElement.addEventListener('dragleave', (e) => {console.log(e)})

为每个子元素触发......并且永远不会为documentElement自身触发。

我错过了什么?

标签: javascriptdrag-and-dropmouseeventaddeventlistenerdrag-event

解决方案


document.addEventListener('dragleave', (e) => {console.log(e)})


推荐阅读