2011-04-01 9 views
1

J'ai ce code et je suis en train de faire en sorte qu'il aura un délai une fois que vous retirez la souris de l'élément de menuJquery Menu question déroulant

$(document).ready(function() { 

    // Hover drop-downs 
    $('#header_right li ul').stop().animate({"opacity":1}, "fast"); 
    $('#header_right li ul').stop().animate({"opacity":0}, "fast"); 


    $("#header_right ul > li").hover(function(){ 
    $(this).find("ul").css('display', 'block').stop().animate({"opacity":1}, "fast"); 
    }, function(){ 
    $(this).find("ul").css('display', 'none').stop().animate({"opacity":0}, "fast"); 
    }); 

}); 

Toute aide sera grandement appréciée

+1

Quelle est votre question? –

+0

Avez-vous considéré le plugin hoverIntent? http://cherne.net/brian/resources/jquery.hoverIntent.html – Geoff

Répondre

1

Utilisez .delay()

Je suppose que vous vouliez retard la peau (quand vol stationnaire de la souris sur )

Votre code, j'ajoute .delay (600) sur la ligne 4. 600 est miliseconds.

$("#header_right ul > li").hover(function(){ 
    $(this).find("ul").css('display', 'block').stop().animate({"opacity":1}, "fast"); 
}, function(){ 
    $(this).find("ul").css('display', 'none').delay(600).stop().animate({"opacity":0}, "fast"); 
}); 

Plus d'info: http://api.jquery.com/delay/