Javascript jQuery倒数计时分钟和秒
我想创建一个jquery倒计时程序,我尝试了下面的代码,但它不起作用。我该怎么办 演示:Javascript jQuery倒数计时分钟和秒,javascript,jquery,Javascript,Jquery,我想创建一个jquery倒计时程序,我尝试了下面的代码,但它不起作用。我该怎么办 演示: var interval=setInterval(函数(){ var timer2=$(“5:01”); var timer=timer2.split(“:”); //通过解析整数,我避免了所有额外的字符串处理 var minutes=parseInt(计时器[0],10); var seconds=parseInt(计时器[1],10); --秒; 分钟=(秒
var interval=setInterval(函数(){
var timer2=$(“5:01”);
var timer=timer2.split(“:”);
//通过解析整数,我避免了所有额外的字符串处理
var minutes=parseInt(计时器[0],10);
var seconds=parseInt(计时器[1],10);
--秒;
分钟=(秒<0)?--分钟:分钟;
如果(分钟<0)清除间隔(间隔);
秒=(秒<0)?59:秒;
秒=(秒<10)?“0”+秒:秒;
//分钟=(分钟<10)?分钟:分钟;
$('.countdown').html(分钟+':'+秒);
}, 1000);代码>
将timer2声明移出setInterval函数,在执行结束时将新的时间值分配给timer2以继续
工作代码段:
var timer2=“5:01”;
var interval=setInterval(函数(){
var timer=timer2.split(“:”);
//通过解析整数,我避免了所有额外的字符串处理
var minutes=parseInt(计时器[0],10);
var seconds=parseInt(计时器[1],10);
--秒;
分钟=(秒<0)?--分钟:分钟;
如果(分钟<0)清除间隔(间隔);
秒=(秒<0)?59:秒;
秒=(秒<10)?“0”+秒:秒;
//分钟=(分钟<10)?分钟:分钟;
$('.countdown').html(分钟+':'+秒);
timer2=分钟+':'+秒;
}, 1000);代码>
您不需要对字符串使用jquerywrap。
因此,首先要解决这个问题:
var timer2 = "5:01";
var timer = timer2.split(':');
第二步,您需要取出开始变量5:01
,因为每次间隔迭代都会将开始值重置为5:01
var timer2=“5:01”;
var interval=setInterval(函数(){
var timer=timer2.split(“:”);
//通过解析整数,我避免了所有额外的字符串处理
var minutes=parseInt(计时器[0],10);
var seconds=parseInt(计时器[1],10);
--秒;
分钟=(秒<0)?--分钟:分钟;
秒=(秒<0)?59:秒;
秒=(秒<10)?“0”+秒:秒;
//分钟=(分钟<10)?分钟:分钟;
$('.countdown').html(分钟+':'+秒);
如果(分钟<0)清除间隔(间隔);
//检查分和秒是否都为0
如果((秒
var timer2=“5:01”;
var interval=setInterval(函数(){
var timer=timer2.split(“:”);
//通过解析整数,我避免了所有额外的字符串处理
var minutes=parseInt(计时器[0],10);
var seconds=parseInt(计时器[1],10);
--秒;
分钟=(秒<0)?--分钟:分钟;
如果(分钟<0)清除间隔(间隔);
秒=(秒<0)?59:秒;
秒=(秒<10)?“0”+秒:秒;
//分钟=(分钟<10)?分钟:分钟;
$('.countdown').html(分钟+':'+秒);
timer2=分钟+':'+秒;
},1000);
变量分钟=1,秒=59;
jQuery(函数(){
jQuery(“span.countdown”).html(分钟+:“+秒);
var count=setInterval(function(){if(parseInt(minutes)<0){clearInterval(count);}else{jQuery(“span.countdown”).html(minutes+”:“+seconds);if(seconds==0){minutes--;if(minutes<10)minutes=“0”+minutes;seconds=59;}seconds--;if(seconds<10)minutes=“0”+seconds;},1000);
})
在00:00停止
var timer2 = "0:05";
var interval = setInterval(function() {
var timer = timer2.split(':');
//by parsing integer, I avoid all extra string processing
var minutes = parseInt(timer[0], 10);
var seconds = parseInt(timer[1], 10);
--seconds;
minutes = (seconds < 0) ? --minutes : minutes;
console.log(minutes, seconds);
seconds = (seconds < 0) ? 59 : seconds;
seconds = (seconds < 10) ? '0' + seconds : seconds;
//minutes = (minutes < 10) ? minutes : minutes;
if (minutes < 0) {
clearInterval(interval);
} else {
$('.countdown').html(minutes + ':' + seconds);
timer2 = minutes + ':' + seconds;
}
}, 1000);
var timer2=“0:05”;
var interval=setInterval(函数(){
var timer=timer2.split(“:”);
//通过解析整数,我避免了所有额外的字符串处理
var minutes=parseInt(计时器[0],10);
var seconds=parseInt(计时器[1],10);
--秒;
分钟=(秒<0)?--分钟:分钟;
console.log(分、秒);
秒=(秒<0)?59:秒;
秒=(秒<10)?“0”+秒:秒;
//分钟=(分钟<10)?分钟:分钟;
如果(分钟<0){
间隔时间;
}否则{
$('.countdown').html(分钟+':'+秒);
timer2=分钟+':'+秒;
}
}, 1000);
还可以看看如何在javascript中声明变量,无需将timer2声明为jQuery对象。@AJ如果对格式也计算小时,该怎么办,如1:30:00
@alkavaghela:为您创建了一个示例提琴..P.S:有更好的javascript函数来实现这一点,但您可以将其用作参考,Feel free问关于这个逻辑是否有任何疑问或问题…:)@A.J-谢谢你在上面的提琴中的评论-有人可以添加评论来理解javascript速记吗?实际上,我在这里找到了:,if(seconds<0){seconds=59}else{seconds=seconds}
最好也在你的解决方案中解释一下。
var timer2 = "0:05";
var interval = setInterval(function() {
var timer = timer2.split(':');
//by parsing integer, I avoid all extra string processing
var minutes = parseInt(timer[0], 10);
var seconds = parseInt(timer[1], 10);
--seconds;
minutes = (seconds < 0) ? --minutes : minutes;
console.log(minutes, seconds);
seconds = (seconds < 0) ? 59 : seconds;
seconds = (seconds < 10) ? '0' + seconds : seconds;
//minutes = (minutes < 10) ? minutes : minutes;
if (minutes < 0) {
clearInterval(interval);
} else {
$('.countdown').html(minutes + ':' + seconds);
timer2 = minutes + ':' + seconds;
}
}, 1000);