js鼠标离开事件还能用吗(关于js鼠标经过事件切换图片)

document.getElementById("selectModal").onmouseenter = function() {      console.log('鼠标移入')  }  document.getElementById("selectModal").onmouseover = function() {       console.log('鼠标移入')   }  document.getElementById("selectModal").onmouseleave = function() {    console.log('鼠标移出')  }  document.getElementById("selectModal").onmouseout = function() {       console.log('鼠标移入')   }

关于鼠标移出效果的坑

问题:当div里面嵌套子级时,外层div监听鼠标移入和移出时间就会不停地触发。

div是多层嵌套,有时就会出现你的鼠标没有移出外层的div,只是移入了内层的div,也会触发鼠标的移出事件。

解决办法:

使用mouseenter来代替mouseover;使用mouseleave来代替mouseout。

他们的区别是:

不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件。

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

不论鼠标指针离开被选元素还是任何子元素,都会触发 mouseout 事件。

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

感谢您访问:美文云网站!本文永久链接:https://meiwenyun.com/432215.html。侵删或不良信息举报请联系邮箱:820608633@qq.com或微信:meiwenyun888。
上一篇 2024年8月22日 04:43
下一篇 2024年8月22日 04:43

相关推荐

分享本页
返回顶部