Задержка Jquery при исчезновении

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

$("#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, как мне это сделать


person user272899    schedule 24.03.2010    source источник


Ответы (3)


В jQuery 1.4 у вас есть метод с именем delay, который принимает целое число, представляющее мс, которое вы хотите отложить.

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

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

person peirix    schedule 24.03.2010
comment
Это отличный материал! Спасибо! - person Everton Lenger; 21.05.2015

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

$("#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
) 
person MedicineMan    schedule 24.03.2010

Как насчет

$("#hover_me").hover(function() {
                $("#target_div").fadeTo("slow", 1.0);
           }, function() {
                $("#target_div").delay(800).fadeTo("slow", 0.6);
           }); 
person odavy    schedule 24.03.2010