同时功能javascript

时间:2016-09-27 01:05:54

标签: javascript jquery

我得到了这个代码,它应该切换元素,跟随一个重复的赞助人,随机成长,我的启动函数同时执行我的runp()函数,它变得一团糟。我需要等到runp()完成才能继续执行。感谢

function runp(patron){
  var x = 0;
  var intervalID = setInterval(function () {
     $("#container"+patron[x]).toggle(1).delay(1000).toggle(1).delay(1000);     

     if (++x === 20) {
         window.clearInterval(intervalID);
     }
  }, 2000);
}

function start(patron, patronl){    
  while (patron.length<20){
    patron.push(rand(1,4));
    runp(patron);
  }   
}

1 个答案:

答案 0 :(得分:0)

您可以使用.queue()

// alternatively pass randomly shuffled array of elements to `$.map()`
$({}).queue("toggle", $.map($("[id^=container]"), function(el) {
  return function(next) {
    return $(el).toggle(1).delay(1000).toggle(1).delay(1000)
           .promise().then(next)
  }
})).dequeue("toggle")