如何在Javascript中定义一个自动重启的简单倒计时
我需要一个简单的倒计时30秒,但我想当30秒结束后,倒计时再次开始 倒计时只开始一次,倒计时不会重新开始 我无法做到这一点,以下是我的代码:如何在Javascript中定义一个自动重启的简单倒计时,javascript,countdown,Javascript,Countdown,我需要一个简单的倒计时30秒,但我想当30秒结束后,倒计时再次开始 倒计时只开始一次,倒计时不会重新开始 我无法做到这一点,以下是我的代码: var i=1; 功能倒计时(选项){ var定时器, 实例=这个, 秒=选项。秒| | 10, updateStatus=options.onUpdateStatus | |函数(){}, counterEnd=options.onCounternd | |函数(){}; 函数递减计数器(){ 更新状态(秒); 如果(秒===0){ instance.
var i=1;
功能倒计时(选项){
var定时器,
实例=这个,
秒=选项。秒| | 10,
updateStatus=options.onUpdateStatus | |函数(){},
counterEnd=options.onCounternd | |函数(){};
函数递减计数器(){
更新状态(秒);
如果(秒===0){
instance.stop();
对端();
返回;
}
秒--;
}
this.start=函数(){
定时器=0;
秒=选项。秒;
定时器=设置间隔(递减计数器,1000);
};
this.stop=函数(){
清除间隔(计时器);
};
}
var myCounter=新的倒计时({
秒数:5,//倒计时的秒数
onUpdate状态:函数(秒){$('#倒计时').html(秒);},//每秒回调
onCounterEnd:函数(){
myCounter.start();
}//最后行动
});
myCounter.start();
$(“#按钮”)。单击(函数(){
myCounter.start();
}); 代码>
重新启动
这是我过去使用过的
这是我过去用过的
这是我过去用过的
这是我过去用过的
希望这有帮助
希望这有帮助
希望这有帮助
希望这有帮助只需对代码进行一些小的修改即可使其正常工作:
var i = 1;
function Countdown(options) {
var timer,
instance = this,
seconds = options.seconds || 10,
updateStatus = options.onUpdateStatus || function () {},
counterEnd = options.onCounterEnd || function () {};
function decrementCounter() {
updateStatus(seconds);
if (seconds === 0) {
seconds = 5;
} else {
seconds--;
}
}
this.start = function () {
clearInterval(timer);
timer = 0;
seconds = options.seconds;
timer = setInterval(decrementCounter, 1000);
};
}
var myCounter = new Countdown({
seconds: 5, // number of seconds to count down
onUpdateStatus: function(sec){$('#countdown').html(sec);}, // callback for each second
onCounterEnd: function(){ myCounter.start(); } // final action
});
myCounter.start();
只需对代码进行一些小的修改即可使其正常工作:
var i = 1;
function Countdown(options) {
var timer,
instance = this,
seconds = options.seconds || 10,
updateStatus = options.onUpdateStatus || function () {},
counterEnd = options.onCounterEnd || function () {};
function decrementCounter() {
updateStatus(seconds);
if (seconds === 0) {
seconds = 5;
} else {
seconds--;
}
}
this.start = function () {
clearInterval(timer);
timer = 0;
seconds = options.seconds;
timer = setInterval(decrementCounter, 1000);
};
}
var myCounter = new Countdown({
seconds: 5, // number of seconds to count down
onUpdateStatus: function(sec){$('#countdown').html(sec);}, // callback for each second
onCounterEnd: function(){ myCounter.start(); } // final action
});
myCounter.start();
只需对代码进行一些小的修改即可使其正常工作:
var i = 1;
function Countdown(options) {
var timer,
instance = this,
seconds = options.seconds || 10,
updateStatus = options.onUpdateStatus || function () {},
counterEnd = options.onCounterEnd || function () {};
function decrementCounter() {
updateStatus(seconds);
if (seconds === 0) {
seconds = 5;
} else {
seconds--;
}
}
this.start = function () {
clearInterval(timer);
timer = 0;
seconds = options.seconds;
timer = setInterval(decrementCounter, 1000);
};
}
var myCounter = new Countdown({
seconds: 5, // number of seconds to count down
onUpdateStatus: function(sec){$('#countdown').html(sec);}, // callback for each second
onCounterEnd: function(){ myCounter.start(); } // final action
});
myCounter.start();
只需对代码进行一些小的修改即可使其正常工作:
var i = 1;
function Countdown(options) {
var timer,
instance = this,
seconds = options.seconds || 10,
updateStatus = options.onUpdateStatus || function () {},
counterEnd = options.onCounterEnd || function () {};
function decrementCounter() {
updateStatus(seconds);
if (seconds === 0) {
seconds = 5;
} else {
seconds--;
}
}
this.start = function () {
clearInterval(timer);
timer = 0;
seconds = options.seconds;
timer = setInterval(decrementCounter, 1000);
};
}
var myCounter = new Countdown({
seconds: 5, // number of seconds to count down
onUpdateStatus: function(sec){$('#countdown').html(sec);}, // callback for each second
onCounterEnd: function(){ myCounter.start(); } // final action
});
myCounter.start();
您正在呼叫计数器。回电话后请停止。因此,您正在开始,然后立即停止新计数器。像这样改变顺序
if (seconds === 0) {
instance.stop();
counterEnd();
return; // don't want to decriment after counterEnd();
}
您正在呼叫计数器。回电话后请停止。因此,您正在开始,然后立即停止新计数器。像这样改变顺序
if (seconds === 0) {
instance.stop();
counterEnd();
return; // don't want to decriment after counterEnd();
}
您正在呼叫计数器。回电话后请停止。因此,您正在开始,然后立即停止新计数器。像这样改变顺序
if (seconds === 0) {
instance.stop();
counterEnd();
return; // don't want to decriment after counterEnd();
}
您正在呼叫计数器。回电话后请停止。因此,您正在开始,然后立即停止新计数器。像这样改变顺序
if (seconds === 0) {
instance.stop();
counterEnd();
return; // don't want to decriment after counterEnd();
}
写这篇文章只是为了好玩:
写这篇文章只是为了好玩:
写这篇文章只是为了好玩:
写这篇文章只是为了好玩:
你有html代码显示吗?@Strange90只需删除clearInterval(计时器);从这个.start=(…是的,这是可行的,但是倒计时从4开始,而不是从5开始,我编辑了代码以便您可以在代码段上看到您是否还有html代码要显示?@Strange90只需删除clearInterval(timer);从这个.start=(…是的,这是可行的,但是倒计时从4开始,而不是从5开始,我编辑了代码,以便您可以在代码段上看到您是否还有html代码要显示?@Strange90只需删除clearInterval(计时器);从此处开始=(…是的,这是可行的,但是倒计时从4开始,而不是从5开始,我编辑了代码,以便您可以在代码段上看到您是否还有html代码要显示?@Strange90只需删除clearInterval(计时器);从此处开始=(…是的,这是可行的,但是倒计时从4开始,而不是从5开始,我编辑了代码,这样你就可以在代码段上看到这很好,但是例如,如果我在另一个地方使用myCounter.start(),它不能正常工作,请查看编辑过的帖子这很好,但是如果我使用myCounter.start())在另一个地方,它不能正常工作,请查看编辑的帖子。这可以正常工作,但是,例如,如果我在另一个地方使用myCounter.start(),它不能正常工作,请查看编辑的帖子。这可以正常工作,但例如,如果我在另一个地方使用myCounter.start(),它不能正常工作,请查看编辑的帖子