在事件处理函数中使用 取消事件冒泡(onStopPropagation、cancelBubble)是没有用的,因为 onmouseover、onmouseout 的连带触发类似捕获行为,无法通过阻止事件冒泡来达到效果。 例如给嵌套 div 的外层盒子添加上 mouseover 和 mouseout 事件,在穿过其内层盒子时,也会触发 mouseover 和 mouseout 事件。
只绑定在当前元素本身,不存在冒泡行为。
mouseenter:当鼠标移入某元素时触发。
mouseleave:当鼠标移出某元素时触发。
mouseover:当鼠标移入某元素时触发,移入和移出其子元素时也会触发。
mouseout:当鼠标移出某元素时触发,移入和移出其子元素时也会触发。
mousemove:鼠标在某元素上移动时触发,即使在其子元素上也会触发。
mouseout、mouseover 和 mouseleave、mouseenter 最大的区别,在于子元素连带触发。