为什么鼠标还没完全移出就触发元素的mouseout事件

想知道这个原因,只需要清楚的明白一下几个jQuery事件:

例 :<div><span></span></div>


1.mouseover() : 如果鼠标指针穿过任何子元素,同样会触发 mouseover 事件。

注:例div使用了mouseover 事件,鼠标在进入div到span再出去,会触发3次mouseover 事件;

2.mouseenter() : 只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件。

注:div使用了mouseenter 事件,鼠标在进入div到span再出去,会触发1次mouseenter事件;

3.mouseout() : 如果鼠标指针离开任何子元素,同样会触发 mouseout 事件。

注:例中div使用了mouseout  事件,鼠标在进入div到span再出去,会触发3次mouseout 事件;

4.mouseleave() : 只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件。

注:div使用了mouseleave  事件,鼠标在进入div到span再出去,会触发1次mouseleave 事件;

所以它们的区别就是mouseover和mouseout拥有冒泡属性,将 mouseout() 换成 mouseleave() 即可!

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值