如何在具有条件暂停长度的循环中暂停jquery

时间:2014-11-14 15:46:14

标签: javascript jquery

我需要根据条件暂停一段时间的循环

var i = 2

while (i) {
    if (i == 2) {
        //pause loop for 5 seconds
        //execute function1();
    } else {
        //pause loop for 4 seconds
        //execute function2();
    }
}

我怎么能做到这一点。 谢谢

2 个答案:

答案 0 :(得分:1)

你可以这样做:

var i = 2,
    method1 = function() {
        //do your thing
        start();
    },
    method2 = function() {
        //do your thing
        start();
    },
    start = function() {
        if( i && i == 2 ) {
            setTimeout(method1,5000);
        }
        else if( i ) {
            setTimeout(method2,4000);
        }
    }
;

您需要在延迟方法结束时调用start()方法。这样,你可以避免在5秒甚至达到之前调用大量的setTimeout(method1,5000)。

答案 1 :(得分:-1)

使用setTimeout()来实现你想要的效果。

http://www.w3schools.com/jsref/met_win_settimeout.asp