-1

我在 CoffeeScript 中写了两条setTimeout语句:

setTimeout ( -> DISPLAY_AREA.append("<p>" + "> " + message + "</p>") ), 1000
setTimeout ( -> DISPLAY_AREA.append("<p>" + "> " + message + "</p>") ), 1000

我希望这些语句按顺序执行并有 1 秒的间隔。但它们同时执行。我们可以更改 的开始时间点setTimeout吗?

4

2 回答 2

2

从第一个回调中调用第二个setTimeout(更通用):

setTimeout (->
    DISPLAY_AREA.append("<p>" + "> " + message + "</p>")

    setTimeout (->
        DISPLAY_AREA.append("<p>" + "> " + message + "</p>")
    ), 1000

), 1000

或者简单地调整超时值:

setTimeout ( -> DISPLAY_AREA.append("<p>" + "> " + message + "</p>") ), 1000
setTimeout ( -> DISPLAY_AREA.append("<p>" + "> " + message + "</p>") ), 2000
于 2013-06-09T10:56:59.703 回答
0

使用一些这样的:

 function inOrder() {
   this.count = this.count+1 || 0; //static var for this function
   if (this.count == 0) {          
     setTimeout('alert("1")', 1000); //First function
   } else if (this.count == 1) {   
     setTimeout('alert("2")', 1000); //second function
   } else { 
     clearInterval(Int); //Clear interval
   }
 }
 var Int = setInterval(inOrder, 1000); //Global reference on Interval Id
于 2013-06-09T10:58:27.510 回答