setInterval() 计时器不工作 [英] setInterval() timer not working
本文介绍了setInterval() 计时器不工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这个简单的函数是为了显示时间并使用 setInterval()
每秒更新一次,时间显示但不更新,我也尝试从主体的 onload 调用中调用该函数,它是一样.
This simple function is meant to display time and update every second using setInterval()
, the time is displaying but not updating, I have also tried calling the function from the body's onload call and it is the same.
<script language="JavaScript" type="text/javascript">
var currentTime = new Date();
function currentTimeStrings()
{
var hours = currentTime.getHours();
var hoursToString = hours;
if (hoursToString>12)
{
hoursToString = hoursToString-1;
}
switch (hoursToString)
{
case 13:
hoursToString = 2;
break;
case 14:
hoursToString = 3;
break;
case 15:
hoursToString = 4;
break;
case 16:
hoursToString = 5;
break;
case 17:
hoursToString = 6;
break;
case 18:
hoursToString = 7;
break;
case 19:
hoursToString = 8;
break;
case 20:
hoursToString = 9;
break;
case 21:
hoursToString = 10;
break;
case 22:
hoursToString = 11;
break;
case 23:
hoursToString = 12;
break;
default:
hoursToString = hoursToString;
break;
}
var minutes = currentTime.getMinutes();
var seconds = currentTime.getSeconds();
document.getElementById("timeDisp").innerHTML=hoursToString + ':' + minutes + ':' + seconds;
}
setInterval(currentTimeStrings,1000);
</script>
推荐答案
您的 currentTime
仅针对当前时间创建一次,并且从未更新.
Your currentTime
is created only once for the current time and never updated.
尝试将您的 var currentTime = new Date();
移动到函数内部:
Try moving your var currentTime = new Date();
into inside the function:
function currentTimeStrings(){
var currentTime = new Date();
//your code
}
这篇关于setInterval() 计时器不工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文