繁体   English   中英

两个淡入淡出切换效果之间的jQuery延迟

[英]Jquery delay between two fade toggle effects

我正在使用Jquery显示和显示两个div

该代码是

var show_hide = function () {
    $("#extravagents_label").fadeToggle(function () {
        $("#liquid.liquidContanier").fadeToggle().delay(1500);
    });
}

setInterval(show_hide, 1500);

但是有问题 它做得不好。 当一个完全隐藏时,它应该显示另一个div。 请访问203.81.193.2/jsvt/ 在显示和隐藏的主滑块下有图标和文本。

您应该注意时序和setInterval它会使事情变得很糟糕。

如果是时间问题:

var show_hide = function () {
    $("#extravagents_label").fadeToggle(callblack);
}

var callblack = function () {
    $("#liquid.liquidContanier").fadeToggle()
        .delay(1500).queue(show_hide);
}

希望这会有所帮助,但仍不确定您要做什么

我为您制作了一个jsfiddle ,可以对您的代码进行一些修改。 基本上,您的间隔是每1.5秒触发一次,同时您还会延迟第二个元素上的fadeToggle。 因为您无法确定jQuery将元素淡入和淡出需要多长时间,所以回调函数将为您处理它。

var show_hide = function () {
    $("#extravagents_label").fadeToggle(function () {
        $(this).fadeToggle();
        $("#liquid.liquidContanier").fadeToggle(function () {
            $(this).fadeToggle();
            show_hide();
        });
    });
}

setTimeout(show_hide, 1500);

尝试这个:

jQuery的

function show_hide() {
 $('#extravagents_label').delay(1000).fadeOut(1000).delay(1000).fadeIn(1000);
 $("#liquid .liquidContanier").delay(1000).fadeIn(1000).delay(1000).fadeOut(1000);
   //don't forgot to use space between id and it's child class
}

setInterval(show_hide,4000);
           //this timing should be total timing values of the show_hide function

猜你的CSS应该是这样的:

#extravagents_label { display:block; }
#liquid .liquidContanier { display:none; }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM