2010-03-24 10 views
9

Ich habe diesen Code, der die Deckkraft des Div bei Hover ändert.Jquery Verzögerung beim Ausblenden

$("#navigationcontainer").fadeTo("slow",0.6); 

$("#navigationcontainer").hover(function(){ $("#navigationcontainer").fadeTo("slow", 
    1.0); // This sets the opacity to 100% on hover },function(){ 

$("#navigationcontainer").fadeTo("slow", 
    0.6); // This sets the opacity back to 60% on mouseout }); 

Ich möchte eine Verzögerung haben, bevor die div zurück auf 0,6 Opazität einstellen, wie würde ich dies tun

Antwort

47

Mit jQuery 1.4, haben Sie eine Methode delay genannt, die eine ganze Zahl ms Sie repräsentieren nimmt zu Verzögerung

$("#navigationcontainer").delay(500).fadeTo("slow", 0.6); 

eine halbe Sekunde Verzögerung

+0

ich je, dass lol Dank vergessen halten so viel – user272899

+0

Das große Zeug! Vielen Dank! –

2

Verwendung Timeout mit einem Rückruf auf die Funktionalität setzen Sie und eine Verzögerung möchten, die Sie wollen.

$("#navigationcontainer").fadeTo("slow",0.6); 

$("#navigationcontainer").hover(function(){ $("#navigationcontainer").fadeTo("slow", 
    1.0); // This sets the opacity to 100% on hover },function(){ 


var delay = 1000; 
setTimeout(function() 
    { 
     $("#navigationcontainer").fadeTo("slow", 
      0.6); // This sets the opacity back to 60% on mouseout }); 

    }, 
    delay 
) 
0

Wie wäre es

$("#hover_me").hover(function() { 
       $("#target_div").fadeTo("slow", 1.0); 
      }, function() { 
       $("#target_div").delay(800).fadeTo("slow", 0.6); 
      }); 
+0

Wie oben, hängt von jquery 1.4 ab ... – odavy