JQuery延迟了几个div

时间:2014-04-14 15:43:14

标签: jquery delay settimeout

我有以下代码:http://jsfiddle.net/S5xLM/

有2个延迟和setTimeout(function (){ }

第一次延迟是有效的,但是第二次延迟没有奏效。

显示的当前对象是灰色框。 延迟后应显示下一个对象(蓝框)。 最后,经过另一次延迟,应该显示绿色框。

所以不是(现在就像):灰色 - 延迟 - >蓝色

我想要:灰色 - 延迟 - >蓝色 - 延迟 - >绿色。

感谢。

3 个答案:

答案 0 :(得分:0)

轻微的 modification 会让你获得理想的效果。

$('#object1').click(function () {
    setTimeout(function() {
        $('#object1').hide();
        $('#object2').show();         
        setTimeout(function() {
            $('#object2').hide();
            $('#object3').show();
        }, 1000)
    }, 1000);
});

答案 1 :(得分:0)

使用此:

$(document).ready(function () {
    $('#object2').hide();
    $('#object3').hide();
    $('#object1').click(function () {
        setTimeout(function () {
            $('#object1').hide();
            $('#object2').show();
        }, 1000);
        setTimeout(function () {
            $('#object2').hide();
            $('#object3').show();
        }, 1500);
    });
});

答案 2 :(得分:0)

试试这个http://jsfiddle.net/aamir/S5xLM/2/

$(document).ready(function () {
    $('#object2').hide();
    $('#object3').hide();
    $('#object1').click(function () {
        setTimeout(function(){
            $('#object1').hide();
            $('#object2').show();
            setTimeout(function(){
                $('#object2').hide();
                $('#object3').show();
            },2000);
        },2000);
    });
});