jquery

mouseleave和mouseenter区别

关键点:冒泡的方式处理问题

例:

鼠标离开此区域触发mouseleave事件

如果p元素和div元素都绑定了mouseover事件,当鼠标离开了p元素区域却没有离开div元素时:

1.p元素响应事件
2.div元素响应事件

由于js的事件冒泡特性,导致触发p元素的mouseover时,他会一直向上查找,同时触发了父元素的mouseover。
所以在这种情况下,推荐使用mouseenter

mouseenter事件只会在绑定它的元素上被调用,而不会在后代节点上被触发.

类似的还有focus,focusin(冒泡)。blur,focusout(冒泡)。

你可能感兴趣的:(jquery)