【发布时间】:2010-09-30 23:38:35
【问题描述】:
我有一个页面当前使用datetime microformat 显示时间戳,但我只显示了我自己时区的人类可读时间:
<abbr class="published" title="2009-01-09T09:16:00-05:00">
Friday, January 9, 2009 at 9:16 am (EST)</abbr>
我想做的是将 abbr 标记的 innerHTML 重写为相同的格式,但使用用户的本地时区。所以对于西雅图的读者来说,上面应该转换为:
<abbr class="published" title="2009-01-09T09:16:00-05:00">
Friday, January 9, 2009 at 6:16 am (PST)</abbr>
我查看了Javascript Date object,它允许我获取本地时区偏移量。但我有几个问题:
我没有看到从 ISO-8601 时间戳创建新 Date 对象的简单方法。 (如果没有更快的方法,我想我可以用子字符串或正则表达式解析。)
我看不到获取时区命名缩写的方法。例如,对于西雅图的读者,我希望时间在末尾附加“(PST)”,否则该用户不清楚时间戳已被转换(特别是如果他是常客并且我已经习惯了我的时间是在东部标准时间的事实)。
【问题讨论】:
标签: javascript timezone timestamp microformats