webForumDet fria alternativet

Begränsa antalet script executions vid mouseover.

JavaScript

1 svar · 432 visningar · startad av Lawyer

Medlem sedan okt. 200942 inlägg
Frågan#1

Hej alla,

Jag använder följande script för att få min dropdown menu att glida ner mjukt:

$(document).ready(function(){
	$(function() {
      $("ul.menu").find("ul").addClass("hidden");
      $("ul.menu").find("li").hover(function(){
        $(this).find(">ul").slideDown(250);
      }, function ( ) {
        $(this).find(">ul").slideUp(250);
      });
    });
});

Problemet är att om jag för musen över triggern (parent) flera gånger hastigt så kommer jag få sitta och titta på hur menyn studsar upp och ner tills alla köande executions har blivit utförda.

Kan någon lägga till en liten kodsnutt som ser till att detta inte händer? T ex genom att vänta en sekund innan trigger blir aktiv igen?

Tack!!

Medlem sedan juni 20019 519 inlägg
#2

Är kanske hoverintent du är ute efter: http://cherne.net/brian/resources/jquery.hoverIntent.html

256 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
119 ms — ändringar (db)