Javascript 调用函数时Jquery倒计时重置计时器
我试图创建一个jquery脚本,它从调用函数时的20秒开始倒计时,然后在调用完成时重置。有办法做到这一点吗?使用setInterval被认为是一种不好的做法,因此最好像这样使用setTimeout:Javascript 调用函数时Jquery倒计时重置计时器,javascript,jquery,timer,reset,countdown,Javascript,Jquery,Timer,Reset,Countdown,我试图创建一个jquery脚本,它从调用函数时的20秒开始倒计时,然后在调用完成时重置。有办法做到这一点吗?使用setInterval被认为是一种不好的做法,因此最好像这样使用setTimeout: var timer = 20 * 1000; function loop() { if (timer > 0) { $('#countdown').html(timer / 1000); timer -= 1000; setTimeout( loop, 1000
var timer = 20 * 1000;
function loop() {
if (timer > 0) {
$('#countdown').html(timer / 1000);
timer -= 1000;
setTimeout( loop, 1000 );
} else {
timer = 20 * 1000;
$('#countdown').html(timer / 1000);
}
}
loop();
试试这个
var total = 20
var counter = 20
var timer = setInterval(function() {
$('#Msg').text(counter--);
if (counter == -1) {
//clearInterval(timer);
$('#Msg').text(total);
counter=20;
}
}, 1000);
This should work for below html
<span id="Msg">20</span>
var总计=20
var计数器=20
var timer=setInterval(函数(){
$('#Msg')。文本(计数器--);
如果(计数器==-1){
//清除间隔(计时器);
$('#Msg').text(总计);
计数器=20;
}
}, 1000);
这应该适用于下面的html
20
尝试以下内容
var timeVar = '', max = 20, starter = 0;
$("#btnStart").on("click",function(){
timer();
});
function set (){
if( max != starter){
$(".timer").text((max).toString());
max--;
if(max == 0){
max = 20;
}
}
}
function timer(){
timeVar = setInterval(set,500);
}
在这里演奏小提琴:
我希望它能有所帮助。查看js文档中的setTimeout()函数,请更具体一些。倒计时什么?内部还是可见的计数器?应该重置什么?对不起,是的。显示在“#div span”内的可见计数器,计时器完成倒计时后应复位。
var timeVar = '', max = 20, starter = 0;
$("#btnStart").on("click",function(){
timer();
});
function set (){
if( max != starter){
$(".timer").text((max).toString());
max--;
if(max == 0){
max = 20;
}
}
}
function timer(){
timeVar = setInterval(set,500);
}