0

我在这样的类中有一堆不同的功能:

var helper = {    

     h1 : function(){
           //does  stuff        
    },

     h2 : function(){   
         //does  stuff
    },

    ...

}

我可以执行我需要的东西:

$('#helper').click(function(){
    helper.h4();
 // then delay then execute h5(), delay h6(), etc... 
     });

我怎么能拥有它,以便函数在每个函数之间定义连续执行delay。我不知道我怎么能做到这一点,但我怀疑我需要 使用queue,dequeue和?delaysetTimeout

4

1 回答 1

1

你可以简单地做:

setTimeout(helper.h4, 0);
setTimeout(helper.h5, 1000);
setTimeout(helper.h6, 2000);
…

请注意,每个超时都将立即开始,因此延迟来自同一时刻(或多或少)。您可能希望从调用中捕获返回的值,以便可以取消由于任何原因尚未调用的超时。

于 2012-04-17T02:26:16.547 回答