2014-12-03 75 views
0

我有一個倒計時jquery小時,分鐘和秒工作。到目前爲止,這完美運作。不過,我希望它也jquery倒計時一天

這算的是JS FIDDLE

HTML

<div id="counttime">24:00:00</div> 
<div id="cons"></div> 

JQUERY

function pad(num) { 
    return num<10?"0"+num:num; 
} 
$(function() { 
    var tCont = $('#counttime'); 
    var timer = tCont.html().split(':'); 

    if (timer.length === 2) timer.unshift(0); 
    var endMilli= timer[0]*60*60*1000; 
    endMilli += timer[1]*60*1000 
    endMilli += timer[2]*1000; 
    if(endMilli > 0) { 
    var endTime = new Date(Date.now()+endMilli); 
$("#cons").append("<br>"+endTime); 
    var tId = setInterval(function() { 
     var diff = endTime.getTime()-Date.now(); 
     if (diff<=0) { 
     tCont.html("00:00:00"); 
     clearInterval(tId); 
     } 
     else { 
     var d = new Date(diff); 
     hh = pad(d.getUTCHours()); 
     mm = pad(d.getMinutes()); 
     ss = pad(d.getSeconds()); 
     tCont.html(""+hh+":"+mm+":"+ss); 
     } 
    },300);  
    } 
}); 
+0

對不起......您今天的意思是什麼? – 2014-12-03 04:05:47

+0

你的問題並不完全清楚。不要說「它工作正常」,你可以請努力描述什麼是「它工作正常」的行爲 – Leo 2014-12-03 04:09:22

+0

@ArunPJohny的意思是我想要倒數日,小時,分鐘,秒......現在只有小時,分鐘,第二個 – TheSmile 2014-12-03 04:20:07

回答

1

你將不得不調整自己的代碼,允許4個部分,然後添加一行來評估天:

dd = pad((diff - diff % (864e5))/864e5), 

DEMO

0

hh部分應該由天乘以!

hh = pad(d.getUTCHours() + d.getDay()*24); 

你應該增加幾個月以及...不知道這是否容易。 或者你可以試試這個:

var hours = Math.abs(date1 - date2)/36e5; 
hh = pad(hours); 

36e5 = 60*60*1000毫秒

+0

我從這得到:http://stackoverflow.com/questions/19225414/how-to-get-the-hours-difference-between-two-date-objects – rodrigogq 2014-12-03 04:17:21

+0

我需要dd:hh:mm:ss – TheSmile 2014-12-03 04:41:37

+0

can你讓它在js小提琴? – TheSmile 2014-12-03 05:01:24