2016-10-25 140 views
0

我的網頁上有一個倒數計時器。但我無法讓它正常工作。倒計時問題

我有一個結束日期 - 這是3月01日,2017年 我有一個當前日期:

var now = Date.now() 

這是我對這段JavaScript整個代碼:

CountDownTimer(1488326400000, 'clockdiv'); 

function CountDownTimer(dt, id) 
{ 
    var end = new Date(dt); 
    var _second = 1000; 
    var _minute = _second * 60; 
    var _hour = _minute * 60; 
    var _day = _hour * 24; 
    var timer; 

    var clock = document.getElementById(id); 
    var daysSpan = clock.querySelector('.days'); 
    var hoursSpan = clock.querySelector('.hours'); 
    var minutesSpan = clock.querySelector('.minutes'); 
    var secondsSpan = clock.querySelector('.seconds'); 

    function showRemaining() { 

     if (!Date.now) { 
      Date.now = function() { return new Date().getTime(); } 
     } 
     // var now = new Date(); 
     var now = Date.now() 
     var distance = end - now; 
     if (distance < 0) { 

      clearInterval(timer); 
      document.getElementById(id).innerHTML = 'EXPIRED!'; 

      return; 
     } 

     var days = Math.floor(distance/_day); 
     var hours = Math.floor((distance % _day)/_hour); 
     var minutes = Math.floor((distance % _hour)/_minute); 
     var seconds = Math.floor((distance % _minute)/_second); 

     daysSpan.innerHTML = ('0' + days).slice(-2); 
     hoursSpan.innerHTML = ('0' + hours).slice(-2); 
     minutesSpan.innerHTML = ('0' + minutes).slice(-2); 
     secondsSpan.innerHTML = ('0' + seconds).slice(-2); 

     // document.getElementById(id).innerHTML = days + 'days '; 
     // document.getElementById(id).innerHTML += hours + 'hrs '; 
     // document.getElementById(id).innerHTML += minutes + 'mins '; 
     // document.getElementById(id).innerHTML += seconds + 'secs'; 
    } 

    timer = setInterval(showRemaining, 1000); 
} 

腳本展示我26天,直到結束日期。這是不正確的。 什麼是錯誤?

+0

當您通過本在調試步驟,在做專的值與預期的有什麼不同? – David

回答

0

這是切斷天至2個字符:

daysSpan.innerHTML = ('0' + days).slice(-2); 

只要做到:

daysSpan.innerHTML = days; 
+0

非常感謝! – Egor