這個很基礎的東西寫的過程中出了很多小的錯誤,在此記錄一下。
原生的js。
結構:
<p id="time"></p>
js:
<script>
var start = new Date().getTime(); // 獲取開始時間
var end = new Date("2019-01-22 18:00:00").getTime(); // 設置結束時間
var space = Math.floor((end-start)/1000) // 獲取時間差值
function countDown(time){
var timer = null;
timer = setInterval(function(){
var day = 0; // 設置默認時間均為0
hour = 0;
minute = 0;
second = 0;
if(time > 0){
day = Math.floor(time / 60 / 60 / 24);
hour = Math.floor(time / 60 / 60 % 24);
minute = Math.floor(time / 60 % 60);
second = Math.floor(time % 60);
// 其中計算時間的這部分代碼可以寫成如下兩種方式:
day = Math.floor(times / (60 * 60 * 24));
hour = Math.floor(times / (60 * 60)) - (day * 24);
minute = Math.floor(times / 60) - (day * 24 * 60) - (hour * 60);
second = Math.floor(times) - (day * 24 * 60 * 60) - (hour * 60 * 60) - (minute * 60);
// 或者:
day = parseInt(times / 60 / 60/ 24);
hour = parseInt(times / 60 / 60 % 24);
minute = parseInt(times / 60 % 60);
second = parseInt(times % 60);
}
if(minute <= 9){
minute = "0" + minute;
}
if(second <= 9){
second = "0" + second;
}
time--;
document.getElementById("time").innerHTML = "剩余時間是:"+day+"天"+hour+"小時"+minute+"分"+second+"秒";
},1000)
if(time <= 0){
clearInterval(timer) // 關閉定時器
}
}
countDown(space);
</script>
?