Javascript 我们如何使用“mouseover”和“mouseout”事件?
正如JQuery文档所说,我已经将许多行mouseover转换为mouseenter,因为它不会触发多次Javascript 我们如何使用“mouseover”和“mouseout”事件?,javascript,jquery,mouseover,Javascript,Jquery,Mouseover,正如JQuery文档所说,我已经将许多行mouseover转换为mouseenter,因为它不会触发多次 mouseover当指针移动到子元素中时也会触发 mouseenter仅当指针移动到绑定元素时才会激发 即使是悬停事件也可以用作mouseenter和mouseleave,而不是mouseover和mouseout 这让我想知道,如果mouseenter可以完成所有任务,为什么会出现mouseover事件 对我来说,mouseover在元素上移动鼠标时会意外触发。它似乎真的取决于子元素的深
mouseover
当指针移动到子元素中时也会触发
mouseenter
仅当指针移动到绑定元素时才会激发
即使是悬停
事件也可以用作mouseenter和mouseleave,而不是mouseover和mouseout
这让我想知道,如果mouseenter
可以完成所有任务,为什么会出现mouseover
事件
对我来说,mouseover
在元素上移动鼠标时会意外触发。它似乎真的取决于子元素的深度
是否有需要多次触发的
mouseover
和mouseout
的良好用例?,因为事件包含光标坐标。
因此,如果您需要跟踪目标下的鼠标坐标,您必须使用我知道的“mouseover”,mouseover/
mouseout
根本没有使用案例。它们存在的唯一原因是因为这些事件是由浏览器触发的,因为mouseenter
和mouseleave
不是标准事件,但它们是特定于jQuery的构造
我认为,如果您希望在将鼠标移到事件绑定到的元素的子元素上并将其移出时触发事件,则会出现一个用例。我想不出任何具体的东西,但至少这个功能是可用的。如果只有mouseenter
/mouseleave
存在,你就别无选择了
发件人:
推测:jQuery的创建者之所以创建了
mouseenter
和mouseleave
非标准事件,是因为他们的行为与您期望的mouseover
/mouseout
事件一样有效(即不考虑后代).我认为那是mousemove
mouseover
和mouseout
是W3C官方标准的一部分,另外两项是微软(有用的)发明。它们可能同时出现,这就解释了为什么现在有两种方法,而且在某些情况下,这两种方法都可能有用。现在,我知道你想知道什么情况。我只是想简单地概述一下它们的起源。@Bergi的可能重复项我认为这个问题与重复项不匹配,因为这个特定的问题是询问mouseover
/mouseout
的用例,同时已经理解了与mouseenter
/mouseleave
@Bergi的区别,我理解其中的区别,只是对用例很好奇。mouseenter
和mouseleave
来自IE。在jQuery中输入/离开气泡吗?
jQuery.each({
mouseenter: "mouseover",
mouseleave: "mouseout"
}, function( orig, fix ) {
/* content snipped */