Jei*_*man 8 javascript timer momentjs
如何将Moment.JS库用于国际时区并实时显示?
这是我目前在索引页面中的内容.
码:
<!DOCTYPE html>
<html>
<head>
<script src="moment.js"></script>
<script src="moment-timezone.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script>
moment().tz("America/Los_Angeles").format();
document.getElementById("time").firstChild.data = moment().format('hh:mm:ss a')
</script>
</head>
<body>
<span id="time">s</span>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
这是我第一次使用MomentJS,我不知道我是否正确实现了它并实时显示它而不经常刷新页面.
您缺少实际的区域数据.转到moment-timezone数据构建器并包含您关注的区域.将其放入另一个名为moment-timezone-data.js并包含它的文件中,或将其内联到您现有的脚本中.请参阅这些文档.
要实时更新它,您需要定期更新元素.
此外,在您的示例代码中,第一次使用时区调用时刻时,您将丢弃响应.第二个电话,你没有使用时区.而且你不需要jQuery.
把它们放在一起:
function showTheTime() {
var s = moment().tz("America/Los_Angeles").format('hh:mm:ss a');
document.getElementById("time").innerHTML = s;
}
showTheTime(); // for the first load
setInterval(showTheTime, 250); // update it periodically
Run Code Online (Sandbox Code Playgroud)
您可能认为将间隔设置为1000毫秒就可以了,但您可能会发现它在视觉上不能顺利打勾.发生这种情况是因为间隔计时器可能与实际时钟不对齐.最好每秒更新多次.
| 归档时间: |
|
| 查看次数: |
14438 次 |
| 最近记录: |