为了账号安全,请及时绑定邮箱和手机立即绑定

JS中关于mouseover和mouseout冒泡的问题

JS中关于mouseover和mouseout冒泡的问题

青春有我 2019-02-28 14:31:33
我的操作都是先移入红色的子盒子,然后移出子盒子,最后移出蓝色大盒子,运行截图如下:我想知道的是倒数第二行为什么会触发mouseover,也就是鼠标从BOX2移出的一瞬间,先是冒泡mouseout可以理解,但同时输出的mouseover就不知道为什么了。有没有大神解释一下呢?
查看完整描述

3 回答

?
千万里不及你

TA贡献1784条经验 获得超9个赞

触发mouseover是因为移出了内部小div进入外面大div的区域,你可以console.log(e.targrt)看一下,这时的target是外面的大div,紧跟着前面的mouseout的target是里面的小div


查看完整回答
反对 回复 2019-03-04
?
慕容3067478

TA贡献1773条经验 获得超3个赞

box1和box2交线部分,比较特殊,因为box2是覆盖在box1上的,所以一经过交线部分,肯定会触发onmouseout,但因为box2是在box1上又触发了onmouseover。
为了解决这样的问题,所以引入了onmouseenter和onmouseleave,它在过交线的时候就不会触发,只有是在范围内都不会有多余的触发了。

查看完整回答
反对 回复 2019-03-04
?
呼啦一阵风

TA贡献1802条经验 获得超6个赞

那也不是冒泡啊,那就是从2到1的mouseout事件,
你给的代码里也没有box2的事件绑定啊.

查看完整回答
反对 回复 2019-03-04
  • 3 回答
  • 0 关注
  • 1126 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信