web*_*ogs 2 javascript timezone timezone-offset
以下脚本应根据偏移量-10(夏威夷)显示当前本地时间,但它不起作用.
无法弄清楚我哪里出错了.
<h3>Current Time in Arizona is
<script type="text/javascript">
<!--
var currentTime = new Date()
var hours = currentTime.getHours()
var minutes = currentTime.getMinutes()
if (minutes < 10)
minutes = "0" + minutes
var suffix = "AM";
if (hours >= 12) {
suffix = "PM";
hours = hours - 12;
}
if (hours == 0) {
hours = 12;
}
document.write("<b>" + hours + ":" + minutes + " " + suffix + "</b>")
//-->
</script>
</h3>
Run Code Online (Sandbox Code Playgroud)
首先,您显示的代码只返回当前的本地时间.它甚至没有尝试在特定时区更改它.
其次,您需要阅读时区标签wiki.特别是,请阅读标题为"Time Zone!= Offset"的部分.
现在碰巧亚利桑那州和夏威夷目前没有使用夏令时,所以你可以通过偏移来调整,如果这是你唯一的两个问题.但我相信你正在寻找更通用的解决方案.
要正确完成,您需要一个实现IANA时区数据库的库. 我在这里列出了几个.例如,以下是使用moment.js和moment-timezone插件在洛杉矶显示当前时间的示例:
moment().tz("America/Los_Angeles").format("h:mm a")
Run Code Online (Sandbox Code Playgroud)
如果您只是想快速简便地在特定时区的网站上放置时钟,那么我建议您使用timeanddate.com提供的免费解决方案.
| 归档时间: |
|
| 查看次数: |
12801 次 |
| 最近记录: |