Javascript 重置';setIntervall';计数器/删除现有实例
加载页面时,计时器将从10分钟倒计时。如果我在一段时间后按下鼠标,倒计时应该会再次开始。 但是计时器将在两个值之间跳转。看来,两者都在计数。如何删除退出间隔Javascript 重置';setIntervall';计数器/删除现有实例,javascript,Javascript,加载页面时,计时器将从10分钟倒计时。如果我在一段时间后按下鼠标,倒计时应该会再次开始。 但是计时器将在两个值之间跳转。看来,两者都在计数。如何删除退出间隔 Template.content.onRendered(function() { var display = document.querySelector('#timer'); startTimer( 600, display); }); Template.content.events({ 'mousedown'
Template.content.onRendered(function() {
var display = document.querySelector('#timer');
startTimer( 600, display);
});
Template.content.events({
'mousedown': function() {
var display = document.querySelector('#timer');
startTimer( 600, display);
// this will start a new counter
// but I want the old one to be replaced
}
});
startTimer = function(duration, display) {
var start = Date.now(),
diff,
minutes,
seconds;
function timer() {
diff = duration - (((Date.now() - start) / 1000) | 0);
minutes = (diff / 60) | 0;
seconds = (diff % 60) | 0;
minutes = minutes < 10 ? "0" + minutes : minutes;
seconds = seconds < 10 ? "0" + seconds : seconds;
display.textContent = minutes + ":" + seconds;
}
timer();
setInterval(timer, 1000);
};
Template.content.onRendered(函数(){
var display=document.querySelector(“#timer”);
startTimer(600,显示器);
});
Template.content.events({
“mousedown”:函数(){
var display=document.querySelector(“#timer”);
startTimer(600,显示器);
//这将启动一个新计数器
//但是我想换一个旧的
}
});
startTimer=功能(持续时间、显示){
var start=Date.now(),
差异,
会议记录,
秒;
函数计时器(){
diff=持续时间-((Date.now()-start)/1000)| 0);
分钟=(差异/60)| 0;
秒=(差异%60)| 0;
分钟=分钟<10?“0”+分钟:分钟;
秒=秒<10?“0”+秒:秒;
display.textContent=分钟+“:”+秒;
}
定时器();
设置间隔(定时器,1000);
};
在js中添加新变量
var timer = 0;
从更新startTimer
功能中的代码
setInterval(timer, 1000);
到
然后在mousedown
事件处理程序函数中,添加以下行
clearInterval(timer);
clearInterval(timer);