13

我有这段代码可以改变悬停时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 不透明度之前有一个延迟 我该怎么做

4

3 回答 3

52

使用 jQuery 1.4,您有一个名为 的方法delay,它接受一个表示您想要延迟的 ms 的整数

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

半秒延迟

于 2010-03-24T15:09:10.997 回答
2

使用 set timeout 与您想要的功能的回调和您想要的延迟。

$("#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
) 
于 2010-03-24T15:12:24.343 回答
0

怎么样

$("#hover_me").hover(function() {
                $("#target_div").fadeTo("slow", 1.0);
           }, function() {
                $("#target_div").delay(800).fadeTo("slow", 0.6);
           }); 
于 2010-03-24T15:19:46.560 回答