javascript - Coffeescript:使用 coffeescript 的 moment js 动态更新时间

标签 javascript coffeescript momentjs

我在使用 moment js 动态查看时间更新时遇到问题。它显示了正确的时间,但我必须刷新浏览器才能获得时间更新。我希望它实时更新。喜欢 momentjs.com 主页。

我试过使用 setInterval 和 setTimeout,但出于某种原因,我得到了以下甚至没有更新的数字。

这是我到目前为止的代码方面的内容。就时间而言非常简单,我想要的只是继续数秒......

update = ->
  time = moment().format('hh:mm:ss a')

clock = setInterval update, 1000
console.log(clock) //output: 53296

非常感谢任何想法。

最佳答案

您应该将输出放在更新方法中,一切都会按预期工作。 方法 setInterval 不会返回重复调用方法的结果,而是返回一个标识符,可以与 clearInterval 一起使用以停止执行。

只是一个小的工作示例,每秒打印一次时间并在 10 秒后停止:

update = ->
    console.log(moment().format('hh:mm:ss a'))
x = setInterval update, 1000;
setTimeout (-> clearInterval(x)), 10000

如果您想将该时间用作某些 DOM 元素的内容,您可以在更新函数中使用以下代码(假设您有一个 ID 为“time”的元素(例如 div)):

JQuery:

$("#time").text(moment().format('hh:mm:ss a')) 

纯 JS:

document.getElementById("time").firstChild.data = moment().format('hh:mm:ss a')

关于javascript - Coffeescript:使用 coffeescript 的 moment js 动态更新时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13924789/

相关文章:

javascript - 在 Angular 1.3 中将对象注入(inject)到嵌入内容的范围中

javascript - 如何在 Redactor 插件中触发自定义方法?

Javascript & promises with Q - promises 中的闭包问题

javascript - Moment.js 从现在起计算错误

javascript - 定期更新 firebase 条目

javascript - 像 html5 canvas 中的内发光一样的效果吗?

php - 使用php javascript mysql登录注册系统的安全问题

node.js - 当我的咖啡文件发生变化时,如何让连接 Assets 重新编译它们?

javascript - grunt 找不到模块 'coffee-script'

javascript - 当我尝试格式化日期时 Chart.js 没有显示