我试图显示每秒发生的最新日期和时间,但输出保持不变。我不想使用jquery,因为我正在学习如何用javascript来做这件事。display函数在onload时被body调用。
function display()
{
var today = new Date();
var month = today.getMonth();
var day = today.getDay();
var year = today.getFullYear();
var hour = today.getHours() > 12 ? today.getHours() - 12 : today.getHours();
var minute = today.getMinutes();
var seconds = today.getSeconds();
var milliseconds = today.getMilliseconds();
var output = month + '/' + day + '/' + year + ' - ' +
hour + ':' + minute + ':' + seconds + ':' + milliseconds;
setInterval(function() {
document.write(output);
}, 3000);
}
4条答案
按热度按时间pu82cl6c1#
试试这个:
document.write
是您想要的吗?您可能想要在<span>
或<div>
中显示它。在这种情况下,document.getElementById('someId').innerHTML
会有帮助。setInterval(display, 3000);
和setInterval('display();', 3000);
是不同的。请参阅此answer以了解更多详细信息。lx0bsm1f2#
您需要在timer函数中进行计算,如下所示:
z9smfwbn3#
一个变量的值是静态的,所以如果你不改变 outout 的值,它就保持不变。
因此,您需要计算间隔回调内的日期,然后显示它。
w6mmgewl4#