0
我是javascript的新手。我正在檢查數據庫中的一段時間,並顯示期間結束時剩餘的時間。Javascript setInterval函數不停止
我得到的時間值與strtotime
作爲變量$lefttime
在PHP中。我的問題是與JavaScript部分,所以我不寫的PHP代碼。
所以我的JavaScript代碼:
var s = <?php echo $lefttime; ?>; //s stands for seconds
var d = Math.floor(s/60); //d stands for minutes
s -= d*60;
var count = setInterval(functime, 1000);
function functime() {
s--;
if(s < 0) {
d--;
s = 59;
var san = s;
var dak = "0" + d;
}
else if(d < 0) {
clearInterval(functime);
document.getElementById('id').innerHTML = "over";
}
else if(d < 10){
var dak = "0" + d;
if(s < 10) {
var san = "0" + s;
}
else {
var san = s;
}
}
else if(s < 10){
var san = "0" + s;
if(d < 10) {
var dak = "0" + d;
}
else {
var dak = d;
}
}
else {
var san = s;
var dak = d;
}
document.getElementById('id').innerHTML = dak+":"+san;
}
創建dak
和san
變量來檢查,如果該值是一個數字,如果這樣加0
他們的左側。
所以它工作完美,除了停止時d < 0
。它倒數至00:00
,然後顯示 0-1:59
,然後顯示undefined:undefined
。
請幫幫我我找不到什麼是錯的。
試過了。但仍然有相同的問題 – ctarimli
您的代碼中可能存在另一個問題。但我向你保證你的代碼在這個特定的點上是錯誤的。 –
是的,你是對的,謝謝你。 – ctarimli