2010-03-24 41 views
9

Tôi có mã này thay đổi độ mờ của div khi di chuột.Độ trễ Jquery trên 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 }); 

Tôi muốn có một sự chậm trễ trước khi thiết lập div trở lại 0,6 opacity làm thế nào tôi sẽ làm điều này

Trả lời

47

Với jQuery 1.4, bạn có một phương pháp gọi là delay, trong đó có một số nguyên đại diện ms bạn muốn trì hoãn

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

nửa giây chậm trễ

+0

tôi tiếp tục lãng quên mà lol Cảm ơn bao giờ quá nhiều – user272899

+0

Đó là công cụ tuyệt vời! Cảm ơn! –

2

sử dụng thiết lập thời gian chờ với một callback với các chức năng mà bạn muốn và một sự chậm trễ mà bạn muốn.

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

Làm thế nào về

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

Như trên, phụ thuộc vào jquery 1.4 ... – odavy

Các vấn đề liên quan