我有内联 javascript,它是一个时钟,但时钟不会刷新,这使它在页面加载的第二秒停止。有人请帮我修好这个时钟。
function showTime() {
let date = new Date();
let h = date.getHours(); // 0 - 23
let m = date.getMinutes(); // 0 - 59
let s = date.getSeconds(); // 0 - 59
let session = "AM";
if (h == 0) {
h = 12;
}
if (h > 12) {
h = h - 12;
session = "PM";
}
h = (h < 10) ? "0" + h : h;
m = (m < 10) ? "0" + m : m;
s = (s < 10) ? "0" + s : s;
let time = h + ":" + m + ":" + s + " " + session;
document.getElementById("MyClockDisplay").innerHTML = time;
}
setTimeout(showTime, 1000);
<div id="MyClockDisplay" class="">clock</div>
setInterval
是你所追求的。它将在每个时间间隔连续运行,直到您使用 clearInterval() 手动停止它。因此,您应该为其分配一个变量。
let timeInterval = setInterval(showTime, 1000);
// if ever you want to stop or pause the clock, you can use:
// clearInterval(timeInterval)
function showTime() {
let date = new Date();
let h = date.getHours(); // 0 - 23
let m = date.getMinutes(); // 0 - 59
let s = date.getSeconds(); // 0 - 59
let session = "AM";
if (h == 0) {
h = 12;
}
if (h > 12) {
h = h - 12;
session = "PM";
}
h = (h < 10) ? "0" + h : h;
m = (m < 10) ? "0" + m : m;
s = (s < 10) ? "0" + s : s;
let time = h + ":" + m + ":" + s + " " + session;
document.getElementById("MyClockDisplay").innerHTML = time;
}
let timeInterval = setInterval(showTime, 1000);
// if ever you want to stop or pause the clock, you can use:
// clearInterval(timeInterval)
<div id='MyClockDisplay'></div>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句