2010-03-24 2 views
9

У меня есть этот код, который изменяет непрозрачность div на зависании.JQuery delay on fadeout

$("#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 }); 

Я хочу иметь задержку перед установкой DIV обратно 0,6 непрозрачности, как бы я это сделать

ответ

47

С JQuery 1.4, у вас есть метод, называемый delay, который принимает целое число, представляющее мс, которые требуются задержит

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

полсекунды задержки

+0

Я забываю, что LOL Спасибо очень много – user272899

+0

Это отличный материал! Благодаря! –

2

использовать набор тайм-аут с обратного вызова функциональности вы хотите и задержку, которую вы хотите.

$("#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

Как насчет

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

Как и выше, зависит от jquery 1.4 ... – odavy

Смежные вопросы