mouseover 和 mouseenter 的区别

2023-01-11 10:16:49    技术分享   

mouseover 和 mouseenter 是两种不同的 JavaScript 事件。

mouseover 事件在鼠标指针移动到元素上方或其子元素上方时触发。

mouseenter 事件则是在鼠标指针进入元素时触发,但不会在其子元素上触发。

举个例子,如果你有一个 div 元素,其中包含一个 p 元素,并且为这两个元素都添加了 mouseover 和 mouseenter 事件监听器,当鼠标指针移动到 p 元素上方时,mouseover 事件会在 div 和 p 元素上同时触发,而 mouseenter 事件只会在 div 元素上触发。

还有一点需要注意的是,mouseover 和 mouseenter 事件有一个重要的区别,就是当鼠标指针从子元素移动到父元素时,mouseover 事件会在父元素上再次触发,而 mouseenter 事件不会。

例如,如果你有一个 div 元素,其中包含一个 p 元素,并且为这两个元素都添加了 mouseover 和 mouseenter 事件监听器,当鼠标指针从 p 元素移动到 div 元素时,mouseover 事件会在 div 元素上再次触发,而 mouseenter 事件不会。

总的来说,mouseover 事件会在鼠标指针移动到元素或其子元素上方时触发,并且在鼠标指针从子元素移动到父元素时会再次触发。而 mouseenter 事件只在鼠标指针进入元素时触发,不会在其子元素上触发,也不会在鼠标指针从子元素移动到父元素时再次触发。


QQ
微信