2

有没有办法使用 setTimeout 函数在 Javascript 中重复一个函数?例如,我需要每五秒调用两个函数。我有这样的事情:

$(document).ready(function(){    
    setTimeout('shiftLeft(); showProducts();', 5000);    
});

但它只发生一次,在页面加载后五秒钟,我需要它每五秒钟发生一次。

4

3 回答 3

7

如果您希望重复执行函数,请使用setInterval()而不是。将函数的执行延迟 x 秒,而每 x 秒执行一次函数。setTimeout()setTimeout()setInterval()

两者都在 JavaScript 事件队列的边界内,所以不要太自信,你的函数会在你指定的确切时间执行

$(document).ready(function(){    
    setInterval( function(){ shiftLeft(); showProducts(); }, 5000);    
}); 
于 2012-11-07T11:05:18.207 回答
2

每 x 秒可以通过以下方式完成setInterval

$(document).ready(function(){    
  setInterval(function(){
    shiftLeft(); showProducts();
  }, 5000);    
});
于 2012-11-07T11:05:06.210 回答
0
$(document).ready(function(){    
  setTimeout(function(){
    shiftLeft(); showProducts();
  }, 5000);    
});
于 2012-11-07T11:04:08.260 回答