完美解決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();
} );
} );
鼠標在下拉菜單移動時菜單會不斷閃爍,說明不斷觸發(fā)了 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中不停閃動的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
ASP.NET MVC中EasyUI的datagrid跨域調用實現代碼
因為easyUI使用的是JQuery的異步方法加載數據,應該遵循JQuery的跨域訪問規(guī)則2012-03-03
jQuery ajax提交Form表單實例(附demo源碼)
這篇文章主要介紹了jQuery ajax提交Form表單的方法,結合實例分析了jQuery ajax操作實現表單提交的相關技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2016-04-04
Javascript技巧之不要用for in語句對數組進行遍歷
Javascript技巧-不要用for in語句對數組進行遍歷的一些原因分析,需要的朋友可以參考下。2010-10-10

