我正在尝试使用 timeago
( source ),与 datejs
,而且它不起作用。以下是我希望可以使用的一些示例代码(假设已加载 timeago
和 datejs
):
>>> d = new Date()
Mon Jun 21 2010 13:24:37 GMT-0400 (EST) { _orient=1, more...}
>>> d.toISOString() // datejs.toISOString
"2010-06-21T17:24:37.501Z" // this is a valid ISO8601 string, I believe
>>> $.timeago(d.toISOString()) // this should work
"NaN years ago"
我非常感谢任何关于为什么会失败以及如何解决或规避这个问题的意见。
谢谢。
布莱恩
最佳答案
(我是Timeago的作者)
问题在于 datejs 输出的 ISO8601 时间戳包含一个毫秒值。 Timeago 目前不支持这种详细的 ISO8601 时间戳;它仅支持 ISO8601 规范的一个子集。
这不是我第一次听说这个问题;是时候推出一个补丁来处理 millis 了。我创建了一个issue to track this 。请留意即将推出的 Timeago 版本。可能是 v0.9。
更新: 现在有一个新版本的 Timeago (v0.9),支持时间戳中的毫秒。 Download it here 。这是relevant commit .
关于javascript - Timeago + DateJS = NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3086954/