Begränsa antalet script executions vid mouseover.

JavaScript

1 svar · 442 visningar · startad av Lawyer

Medlem sedan okt. 200942 inlägg
Trådstart#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

260 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)