网站建设资讯

NEWS

网站建设资讯

如何解决jQuery的hover事件在IE中不停闪动的问题

这篇文章主要为大家展示了“如何解决jQuery的hover事件在IE中不停闪动的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决jQuery的hover事件在IE中不停闪动的问题”这篇文章吧。

创新互联专注于镇海网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供镇海营销型网站建设,镇海网站制作、镇海网页设计、镇海网站官网定制、微信小程序服务,打造镇海网络公司原创品牌,更为您提供镇海网站排名全网营销落地服务。

在使用jQuery的hover事件时,经常会因为鼠标滑动过快导致菜单不停闪动的情况,相信很多朋友都遇到过自己做的纵向下拉菜单不停的收缩,非常的讨厌。今天在给一个网站设计菜单时也遇到了这个情况,结果在百度上找了N久,没有找到解决方法。在这里吐槽一下,百度太2了,收录的内容都没什么价值,最后还是在google找到了解决方法,下面就把这个jQuery的hover在IE中会导致不停闪动的解决方法教给大家。

$("#category ul").find("li").each( function() { 
$(this).mouseover( function() {
$(this).children("ul").show(); 
} ); 
$(this).mouseout( function() {
$(this).children("ul").hide();
 } ); 
} );

鼠标在下拉菜单移动时菜单会不断闪烁,说明不断触发了 mouseover 和 mouseout 事件。

其实很简单的解决方法:将 mouseover 改成 mouseenter,mouseout 改成 mouseleave。mouseenter 和 mouseleave 事件是 jQuery 库中实现的,并不是浏览器的原生事件。不过最重要的是把菜单不停闪动的问题解决了!

$("#category ul").find("li").each( function() {
 $(this).mouseenter(function() { 
$(this).children("ul").show(); 
} );
 $(this).mouseleave(function() {
 $(this).children("ul").hide();
 } ); 
} );

以上是“如何解决jQuery的hover事件在IE中不停闪动的问题”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


本文名称:如何解决jQuery的hover事件在IE中不停闪动的问题
转载注明:http://njwzjz.com/article/pdisge.html