js事件中的onmouseout和onmouseleave

来源:互联网 发布:算法设计策略 编辑:程序博客网 时间:2024/05/16 09:55

写一个项目的过程中发现一个问题:
鼠标监听A元素的onmouseout事件,结果当鼠标移到A元素里面的B元素时,事件也触发了。
原因是因为:事件冒泡。
当鼠标从A元素进入到B元素时,A也会触发自己的onmouseout事件,但是由于自己并没有绑定这个事件,因此B的onmouseout传递给了A元素,所以当进入B时,实际上就触发了A元素的onmouseout事件了。
解决办法是使用onmouseleave事件来代替onmouseout事件。
onmouseleave禁止了事件冒泡,因此B元素并不会触发事件。
这里写图片描述

原创粉丝点击