如何延迟函数调用5秒?

我想要widget.Rotator.rotate()在调用之间延迟5秒…如何在jQuery中做到这一点…jQuery的delay()似乎不适用于此…

476354 次浏览

你可以使用纯javascript,这将调用your_func一次,5秒后:

setTimeout(function() { your_func(); }, 5000);

如果你的函数没有参数,也没有显式的接收器,你可以直接调用setTimeout(func, 5000)

还有一个我用过一次的插件。它有oneTimeeveryTime方法。

var rotator = function(){
widget.Rotator.rotate();
setTimeout(rotator,5000);
};
rotator();

或者:

setInterval(
function(){ widget.Rotator.rotate() },
5000
);

或者:

setInterval(
widget.Rotator.rotate.bind(widget.Rotator),
5000
);