【发布时间】:2016-03-03 10:04:06
【问题描述】:
我有一个正在运行的数字时钟,它运行良好,但我希望多个时钟在不同的时区运行。我在西海岸,当人们在不同的时区观看时,我希望时间有所不同。我怎样才能做到这一点?
function displayTime() {
var currentTime = new Date();
var hours = currentTime.getHours();
var minutes = currentTime.getMinutes();
var seconds = currentTime.getSeconds();
var meridiem = "AM";
if (hours > 12) {
hours = hours - 12;
meridiem = "PM";
}
if (hours === 0) {
hours = 12;
}
if(hours < 10) {
hours = "0" + hours;
}
if(minutes < 10) {
minutes = "0" + minutes;
}
if(seconds < 10) {
seconds = "0" + seconds;
}
var clockDiv = document.getElementById('clock');
clockDiv.innerText = hours + ":" + minutes + ":" + seconds + " " + meridiem;
}
displayTime();
setInterval(displayTime, 1000);
});
【问题讨论】:
-
您关心准确性吗?如果你这样做,不要使用浏览器的时间,使用你的服务器的时间。
-
嗯,请问我是怎么做到的?是的,准确性很重要
-
中午,这将显示 12 AM,而按照惯例显示 12 PM。默认情况下,这将显示基于主机系统设置的时间(即“本地”时间)。如果要显示特定时区的时间,则通过所需的偏移量调整 UTC 值(例如使用 setUTCMinutes)并使用 UTC 方法(getUTCMinutes 等)来格式化日期字符串。
标签: javascript date time