Maison > Article > interface Web > Partager la solution au problème selon lequel l'événement de survol dans jQuery continue de clignoter dans IE
Lors de l'utilisation de l'événement de survol jQuery, le menu clignote souvent à cause du glissement trop rapide de la souris. Je pense que de nombreux amis ont rencontré ce problème. J'ai vu que le menu déroulant vertical que j'ai créé ne cesse de rétrécir, ce qui est très ennuyeux. J'ai également rencontré cette situation aujourd'hui lorsque je concevais un menu pour un site Web. En conséquence, j'ai longtemps cherché sur Baidu et je n'ai pas trouvé de solution. Laissez-moi me plaindre ici, Baidu est dommage et le contenu inclus a peu de valeur. Enfin, j'ai trouvé une solution sur Google. Je vais maintenant vous apprendre la solution au problème que le survol de jQuery provoque un clignotement constant dans IE.
$("#category ul").find("li").each( function() { $(this).mouseover( function() { $(this).children("ul").show(); } ); $(this).mouseout( function() { $(this).children("ul").hide(); } ); } );
Lorsque la souris se déplace dans le menu déroulant, le menu continuera à clignoter, indiquant que les événements mouseover et mouseout sont déclenchés en continu.
En fait, une solution très simple : remplacez le survol par mouseenter et le mouseout par mouseleave. Les événements mouseenter et mouseleave sont implémentés dans la bibliothèque jQuery et ne sont pas des événements natifs du navigateur. Mais le plus important est de résoudre le problème du menu qui clignote en permanence !
$("#category ul").find("li").each( function() { $(this).mouseenter(function() { $(this).children("ul").show(); } ); $(this).mouseleave(function() { $(this).children("ul").hide(); } ); } );
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!