jQuery 中 mouseover 与 mouseout 使用时闪烁问题

本文详细解释了鼠标悬停事件中的mouseover与mouseenter以及mouseout与mouseleave的区别,并通过一个示例展示了这些事件的应用。当鼠标指针穿过被选元素或其子元素时会触发mouseover事件;而仅当鼠标指针穿过被选元素时才触发mouseenter事件。mouseout事件会在鼠标离开被选元素及其子元素时触发;mouseleave则只在鼠标离开被选元素时触发。

区别:


mouseover与mouseenter


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


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


mouseout与mouseleave


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


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




<!
DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> #id1 { width: 300px; height: 300px; background-color: #c77bff; margin: 50px auto; } #id2 { width: 70px; height: 70px; background-color: #94ff74; display: none; margin: 50px 0 0 230px; } </style> </head> <body> <script src="http://libs.baidu.com/jquery/1.11.1/jquery.min.js"></script> <div id="id1"> <div id="id2"> </div> </div> <script type="text/javascript"> var timer; $("#id1").mouseover(function () { $('#id2').show(); if (timer) { clearTimeout(timer) } }).mouseout(function () { if (timer) { clearTimeout(timer) } timer = setTimeout(function () { $('#id2').hide(); }, 300) }); </script> </body> </html>



 

转载于:https://www.cnblogs.com/phoenix6310/p/9269774.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值