很抱歉,如果以前在这里已经问过这个问题,我找不到合适的答案。
我想创建一个JavaScript sleep/delay/wait函数,可以在脚本中的任何地方调用它,例如jQuery的.delay()
我无法使用setTimeout,因为我有一个由php生成的脚本,因此无法将其放入两个不同的函数中,其中超时位于中间。我需要创建一个允许我做的功能
alert("time started");
sleep(4000);
alert("time up");
我真的不想使用jQuery。
最佳答案
不幸的是,您不能仅仅添加一个函数来暂停Javascript。
您必须使用setTimeout()
例子:
function startTimer () {
timer.start();
setTimeout(stopTimer,5000);
}
function stopTimer () {
timer.stop();
}
编辑:
对于您的用户生成的倒数计时,它同样简单。
HTML:
<input type="number" id="delay" min="1" max="5">
JS:
var delayInSeconds = parseInt(delay.value);
var delayInMilliseconds = delayInSeconds*1000;
function startTimer () {
timer.start();
setTimeout(stopTimer,delayInMilliseconds);
}
function stopTimer () {
timer.stop;
}
现在,您只需要为
startTimer()
添加触发器,例如onchange
。