Javascript 如果间隔达到0,则停止计时器
如果计时器达到0,我需要停止计时器。我需要在00.00停止倒计时,并显示Javascript 如果间隔达到0,则停止计时器,javascript,php,html,Javascript,Php,Html,如果计时器达到0,我需要停止计时器。我需要在00.00停止倒计时,并显示警报(倒计时已停止)。现在它再次启动。在达到00.00后需要停止 功能启动定时器(持续时间,显示){ var定时器=持续时间,分钟,秒; setInterval(函数(){ 分钟=parseInt(计时器/60,10) 秒=parseInt(计时器%60,10); 分钟=分钟
警报(倒计时已停止)
。现在它再次启动。在达到00.00后需要停止
功能启动定时器(持续时间,显示){
var定时器=持续时间,分钟,秒;
setInterval(函数(){
分钟=parseInt(计时器/60,10)
秒=parseInt(计时器%60,10);
分钟=分钟<10?“0”+分钟:分钟;
秒=秒<10?“0”+秒:秒;
display.textContent=分钟+“:”+秒;
如果(--定时器<0){
定时器=持续时间;
}
}, 1000);
}
window.onload=函数(){
变量五分钟=60*.05,
display=document.querySelector(“#time”);
startTimer(五分钟,显示);
};代码>
注册在开始分钟内结束!
请使用片段中显示的clearInterval
功能启动定时器(持续时间,显示){
var定时器=持续时间,分钟,秒;
var\uuu定时器=设置间隔(函数(){
分钟=parseInt(计时器/60,10)
秒=parseInt(计时器%60,10);
分钟=分钟<10?“0”+分钟:分钟;
秒=秒<10?“0”+秒:秒;
display.textContent=分钟+“:”+秒;
如果(--定时器<0){
清除间隔(计时器);
定时器=持续时间;
}
}, 1000);
}
window.onload=函数(){
变量五分钟=60*.05,
display=document.querySelector(“#time”);
startTimer(五分钟,显示);
};代码>
注册在开始分钟内结束!
或者您可以包装这行代码
if (--timer < 0) {
timer = duration;
}
if(--timer<0){
定时器=持续时间;
}
与
if(display.textContent!=“0:00”){
如果(--定时器<0){
定时器=持续时间;
}
}
您是否尝试过clearInterval()函数?仅供参考,通过使用Date.now()
和计算从某个开始时间开始经过的时间来显示准确的计时器,而不是通过减少setInterval()中的计数器来显示,因为setInterval()
不能保证按时运行-尤其是在移动设备中,由于电源管理原因,它可能会被暂停。如果我使用If(--timer<0){timer=duration;}clearInterval(timer);如果要在其上使用clearInterval()
,则必须保存setInterval()的返回结果。@jfriend00我需要以任何可能的方式修复它
if (display.textContent != "0:00") {
if (--timer < 0) {
timer = duration;
}
}