以下是我的javascript代码.我试图让我的函数timedisplay()每秒触发一次.但它并非如此......
function timedisplay() {
alert ("Welcome");
var pelement = document.getElementById("myclock");
var timeobj = new Date();
alert (timeobj);
pelement.innerHTML = timeobj.toLocaleTimeString();
alert (pelement.toLocaleTimeString());
settimeout (timedisplay,1000);
}Run Code Online (Sandbox Code Playgroud)
Timer Clock Testing..
<button onclick="timedisplay()">Click me</button>
<p id="myclock"></p>Run Code Online (Sandbox Code Playgroud)
有什么问题?
你可以考虑调用setInterval函数而不是setTimeout,而你只需要调用一次.虽然在技术上允许setInterval进入回调,但最好将它放在一个单独的函数中,如下所示:
/* the callback */
function refreshTime() {
var pelement = document.getElementById("myclock");
var timeobj = new Date();
pelement.innerHTML = timeobj.toLocaleTimeString();
}
/* start the clock */
function timedisplay() {
setInterval( refreshTime, 1000 );
}
Run Code Online (Sandbox Code Playgroud)