需要帮助(javascript/jquery定时器函数)
我有一个2分钟的计时器,从点击btn开始。如果你点击btn它工作得很好,在完成2分钟后再次点击btn它工作得很好 问题:如果用户在完成2分钟之前单击btn,计时器将重新激活自身并启动计时器并行两次或n次 我需要帮助,在每一个点击计时器应该从一开始,并运行只有一个计时器 请参阅“运行代码片段”以了解更多信息需要帮助(javascript/jquery定时器函数),javascript,jquery,Javascript,Jquery,我有一个2分钟的计时器,从点击btn开始。如果你点击btn它工作得很好,在完成2分钟后再次点击btn它工作得很好 问题:如果用户在完成2分钟之前单击btn,计时器将重新激活自身并启动计时器并行两次或n次 我需要帮助,在每一个点击计时器应该从一开始,并运行只有一个计时器 请参阅“运行代码片段”以了解更多信息 $('.timer btn').off('click').on('click',myfunction); 函数myfunction(){ var倒计时=2*60*1000; var time
$('.timer btn').off('click').on('click',myfunction);
函数myfunction(){
var倒计时=2*60*1000;
var timerId=setInterval(函数(){
倒计时-=1000;
var min=数学楼层(倒计时/(60*1000));
//var sec=Math.floor(倒计时-(分钟*60*1000));//错误
var sec=数学地板((倒计时-(分钟*60*1000))/1000);//正确
如果(倒计时您需要在开始新的间隔之前清除上一个间隔
var timerId;
function myfunction(){
var countdown = 2 * 60 * 1000;
timerId = clearInterval(timerId);
timerId = setInterval(function(){
countdown -= 1000;
var min = Math.floor(countdown / (60 * 1000));
//var sec = Math.floor(countdown - (min * 60 * 1000)); // wrong
var sec = Math.floor((countdown - (min * 60 * 1000)) / 1000); //correct
if (countdown <= 0) {
alert("30 min!");
clearInterval(timerId);
//doSomething();
} else {
$("#timerDiv").html(min + " : " + sec);
}
}, 1000);
}
$('.timer-btn').off('click').on('click', myfunction);
var-timerId;
函数myfunction(){
var倒计时=2*60*1000;
timerId=清除间隔(timerId);
timerId=setInterval(函数(){
倒计时-=1000;
var min=数学楼层(倒计时/(60*1000));
//var sec=Math.floor(倒计时-(分钟*60*1000));//错误
var sec=数学地板((倒计时-(分钟*60*1000))/1000);//正确
如果(倒计时表示感谢您的时间和努力。但其行为仍然相同。在按钮上单击两次或更多次,然后查看。它对我很好:是的,它很好。比您!很乐意帮助:)