解决ie下jq动画闪烁问题

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

1

2

3

4

5

6

7

8

$("#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 库中实现的,并不是浏览器的原生事件。不过最重要的是把菜单不停闪动的问题解决了!

1

2

3

4

5

6

7

8

$("#category ul").find("li").each(function() {

$(this).mouseenter(function() {

$(this).children("ul").show();

} );

$(this).mouseleave(function() {

$(this).children("ul").hide();

} );

} );

以上这篇完美解决jQuery的hover事件在IE中不停闪动的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • (续jQuery基础(1)) 第5章 DOM节点的复制与替换 (1)DOM拷贝clone() 克隆节点是DOM的常...
    凛0_0阅读 5,274评论 0 8
  • 总结: 鼠标事件 1.click与dbclick事件$ele.click()$ele.click(handler(...
    阿r阿r阅读 5,573评论 2 10
  • 1.JQuery 基础 改变web开发人员创造搞交互性界面的方式。设计者无需花费时间纠缠JS复杂的高级特性。 1....
    LaBaby_阅读 5,278评论 0 2
  • 1.穿着棉袄吃着街边老爷爷烤的烫手的烤红薯 2.把秋裤扎进袜子里,把秋衣扎在秋裤里,把你握在手心里 3.可以无限赖...
    吖i阅读 1,513评论 0 1
  • 有人说生命在于静止,有人说生命在于折腾,其实懒有懒的安逸,折腾有折腾的乐趣,重要的是,你有享受过程的智慧,又有承担...
    ysy888阅读 3,130评论 0 2

友情链接更多精彩内容