有两个指针退出事件:mouseout
和 mouseleave
。
两者之间的区别在于,mouseleave
仅在指针离开监视元素时触发,而mouseout
在指针离开监视元素或任何其他元素时触发它的 child 。
当您将指针移入和移出某个元素时,mouseleave
只会触发一次,而 mouseout
可能会触发多次,具体取决于您悬停的子元素数量结束了。
问题是:mousein
等价于 mouseout
的地方在哪里?在 MDN 上,只有 mouseleave
,mouseout
和mouseenter
are documented 。
对于罕见的用例,我需要在指针进入的每个元素上运行代码,包括动态创建的元素。 mousein
可以为我解决这个问题,但它似乎不再存在了。
最佳答案
The question is: where is the
mousein
equivalent ofmouseout
mouseout
对应的事件是 mouseover
,mouseleave
对应的事件是 mouseenter
。
它们的主要区别在于 mouseleave
/mouseenter
不会冒泡,这在例如MDN ,但简而言之
mouseleave
在指针离开该元素及其所有后代时触发,而mouseout
在指针离开该元素或离开其中之一时触发元素的后代(即使指针仍在元素内)。mouseover
,它与mouseenter
的不同之处在于它不会冒泡,并且当指针从其后代之一移动时不会发送它' 物理空间到它自己的物理空间。
关于javascript - 如何在现代浏览器中使用 mousein 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50335826/