因此,我製作了一個時鐘,它的工作原理非常棒。現在我想將JavaScript移動到一個外部文件並鏈接到它與將javascript時鐘代碼從html文件移動到外部.js文件
<SCRIPT type="text/javascript" language="JavaScript" src="clock.js"
</SCRIPT>
我不知道如何保持它更新雖然。我已經嘗試了幾件事情和結果,其中:頁面加載時的時間是靜態的,每次更新都在屏幕上打印,而且根本沒有時間。
<html>
<head>
<script type="text/javascript">
function startTime()
{
var today=new Date();
var h=today.getHours();
var m=today.getMinutes();
var s=today.getSeconds();
// add a zero in front of numbers<10
m=checkTime(m);
s=checkTime(s);
document.getElementById('txt').innerHTML=h+":"+m+":"+s;
t=setTimeout('startTime()',500);
}
function checkTime(i)
{
if (i<10)
{
i="0" + i;
}
return i;
}
</script>
</head>
<body onload="startTime()">
<div id="txt"></div>
</body>
</html>
相反的setTimeout的,嘗試的setInterval,並在setInterval的不使用引號(只要'setInterval(startTime,500)')。 – tjameson
@travis, - tjameson是正確的,使用setInterval,setTimeout在給定的時間間隔運行一次函數,就像延遲一樣。 setInterval在給定的inteval處運行一個連續的函數。你可以使用'removeInterval(intervalId)' – dpp
@tjameson來停止這個函數。現有的'setTimeout'是函數的最後一行,它會被超時調用,因此用'setInterval'代替它是一個非常糟糕的主意。完全從函數中刪除它並在'onload'處理函數中使用'setInterval'就可以了。 – nnnnnn