Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery倒数计时分钟和秒_Javascript_Jquery - Fatal编程技术网

Javascript 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); --秒; 分钟=(秒

我想创建一个jquery倒计时程序,我尝试了下面的代码,但它不起作用。我该怎么办

演示:

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);