我在使用settimeout超时后使用反跳执行事件。我的问题是,其他JavaScript事件期望这些事件同步发生。由于它们现在在超时后执行,因此我希望能够通过其他javascript事件来过早触发它们(因此那些需要它们的事件不会失败)。
Anywhom,如果我做类似的事情:
timeout = setTimeout(function() { alert('hi'); }, 10000);
,而我希望这种情况在10秒过去之前发生,该怎么办?
该解决方案可以在必要时涉及jquery。谢谢!
编辑:
是否可以仅通过访问超时对象来做到这一点?
最佳答案
因此,如果执行任何操作都会延迟其自身的功能:
function sayHi() {
alert('hi');
}
您可以使用超时和常规函数调用:
var timeout = setTimeout(sayHi, 10000); // say hi after 10 seconds
或者要在超时到期之前调用它,只要需要,就可以调用该函数:
sayHi();
我在正确的轨道上吗?如果需要取消超时,请在
clearTimeout()
变量上调用timeout
。if (timeout)
clearTimeout(timeout);
关于javascript - 尽早执行settimeout,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9425512/