如果函数
我每1000毫秒有一个setInterval,但时钟不会刷新。我必须刷新页面,让时钟显示正确的时间。
function InitClock() {
setInterval(function () {
var mytime = getDateTime();
console.log(mytime);
document.getElementById("divClock").innerHTML = mytime;
}, 1000);
}
我不太清楚发生了什么事。
getDateTime();
没有抛出某种错误,请检查控制台。还要检查是否在某个地方实际调用了函数InitClock();
。。。请参阅下面的代码,该代码应该使用new Date();
对象。
<html>
<script>
function InitClock() {
setInterval(function () {
var mytime = new Date();
console.log(mytime);
document.getElementById("date").innerHTML = mytime;
}, 1000);
}
InitClock();
</script>
<body>
<div id="date"></div>
</body>
</html>
getDateTime不是内置的Javascript函数。您需要实例化一个Javascript Date对象,并使用它的方法来获取日期信息。您可以在Mozilla开发者网络上找到有关Date对象的更多信息,Mozilla开发者网络是Javascript的最佳资源之一。您可以执行以下操作:
function InitClock() {
setInterval(function() {
var date = new Date(),
mytime = date.getTime();
console.log(mytime);
document.getElementById("divClock").innerHTML = mytime;
}, 1000);
}
在运行setInterval:之前,我会通过缓存时钟的DOM元素来对其进行一点优化
function InitClock() {
var clockEl = document.getElementById("divClock");
setInterval(function() {
var date = new Date(),
mytime = date.getTime();
console.log(mytime);
clockEl.innerHTML = mytime;
}, 1000);
}