我使用下面的函數顯示倒計數,並希望在計數器達到0時重新加載頁面。我剛坐下看着櫃檯打到0,什麼也沒有發生。是不是location.reload()
假設刷新頁面?當倒計數達到0時用Javascript重新載入頁面
function secondPassed() {
var numDays = Math.floor(seconds/86400);
var numHours = Math.floor((seconds % 86400)/3600);
var numMinutes = Math.floor(((seconds % 86400) % 3600)/60);
var numSeconds = ((seconds % 86400) % 3600) % 60;
if (numSeconds < 10) {
numSeconds = "0" + numSeconds;
}
document.getElementById('count').innerHTML = "<span class='fa fa-clock-o' aria-hidden='true'></span> " +('' + numDays).slice(-2) + "d " + "" +('' + numHours).slice(-2) + "h " + "" + ('' + numMinutes).slice(-2) + "m " + "" +('' + numSeconds).slice(-2) + "s ";
if (seconds <= 0) {
clearInterval(countdownTimer);
location.reload();
} else {
seconds--;
}
}
setInterval(function() {
secondPassed();
}, 1000);
您是否在控制檯中發現錯誤?我已經用你的代碼做了一個jsfiddle,初始化'seconds'變量,並將'countdownTimer'賦值給setInterval函數)並且它工作。工作jsFiddle:[https://jsfiddle.net/fabio_silva/5sgnc818/](https://jsfiddle.net/fabio_silva/5sgnc818/) –
我沒有看,我沒有打開該頁面了。我會尋找任何錯誤。 – Ciprian
你的'countdownTimer'是* undefined *當你嘗試'clearInterval'因此'reload'沒有被調用,因爲執行被中止。 – dreyescat