Javascript计时计时器

时间:2013-04-29 14:21:16

标签: javascript timer

我在java脚本中有一个工作倒计时器,它从120秒倒计时到0,现在我想把它改成COUNT UP计时器,尝试一些事情仍然无法正常工作。任何人都可以帮助将其更改为COUNT UP而不是COUNT DOWN。

以下是代码:

<script type="text/javascript" >
var m = 0;
var s = 120;
var timer_container = document.getElementById("survey-timer");
timer_container.innerHTML = s + "." + m;

function timer() {
    if (m<=0) {
        m = 9;
        s -= 1;
    }
    if(s>=0) {
        m -= 1;
        timer_container.innerHTML = s + "." + m;
        setTimeout(timer,100);
    }
}
</script>

2 个答案:

答案 0 :(得分:1)

你想要从120开始计数,或者从0开始计算...从0开始计数。

   <script type="text/javascript" >
    var m=0
    var s=0
    var timer_container=document.getElementById("survey-timer");
    timer_container.innerHTML=s+"."+m;

    function timer(){
    if (m>=9){
        m=-1;
        s+=1;
    }
    if(s>=0){
        m+=1;
        timer_container.innerHTML=s+"."+m;
        setTimeout(timer,100);
    }
    }
    </script> 

以下是jsfiddle

的工作示例

答案 1 :(得分:1)

如果是我,我会这样做:

var base = new Date();
var timer_container = document.getElementById("survey-timer");

timer();

function timer() {
  var now = new Date();
  // elapsed time in seconds
  var elapsed = (now - base) / 1000.0;
  timer_container.innerHTML = elapsed.toFixed(1);
  setTimeout(timer, 100);
}
<div id="survey-timer">&nbsp;</div>

因为我认为问题和rahul的答案中使用的技术可能会因为任何原因延迟超时而“滑倒”。