倒计时值每秒更新一次

时间:2014-05-16 14:43:55

标签: javascript jquery

我试图制作一个倒计时时钟并且它每秒都会倒计时,但是当用户输入新的第二个值时,它不会重新开始,但会从之前的值继续......如何我能改变吗?

function clock() {
    var $s = $(".second"),
    s = setInterval(1000);
    setTimeout("clock()", 1000);
    $s.val(s).trigger("change");

}
clock();

http://jsfiddle.net/z4LSN/3/

1 个答案:

答案 0 :(得分:0)

也许你可以试试这个

$(document).ready(function(){
    $(".second").knob()
    setUpClock();
        // destroy the prev clock during user input
    $(".second").keydown(function(){
          tearDownClock();
    });

        //restart the clock when the user navigates away from the input
    $(".second").blur(function(){
          if(!interval){
              setUpClock();
           }                    
    });
});
function clock(){
     var secHtml = $(".second");
     var sec = secHtml.val();
     if(sec-1>=0){
         secHtml.val(sec-1);
         secHtml.change();
     }
     else{
         tearDownClock();
     }

}
function setUpClock(){
    interval = setInterval(clock,1000);
}
function tearDownClock(){
    window.clearInterval(interval);
    interval=null;
}

这是新的UNBROKEN Fiddle