【发布时间】:2013-10-23 16:09:40
【问题描述】:
我正在尝试编写一个 JavaScript 代码,该代码将在一天中的两个小时之间显示某条消息。我们是在东部标准时间,但我使用通用时间没有问题,因为这使得编写脚本更容易。到目前为止,我有这个并且效果很好,但是,我完全不知道如何使用夏令时。
$(document).ready(function(){
var todaysDate = new Date();
var weekday = todaysDate.getDay();
var universalhour = todaysDate.getUTCHours();
if (weekday >= 0) {
if (weekday <= 4) {
if (universalhour >= 14) {
if (universalhour < 23) {
$('div#announcements span').append('<br />Open.');
}
}
}
}
if (weekday == 5) {
if (universalhour >= 14) {
if (universalhour < 20) {
$('div#announcements span').append('<br />Open.');
}
}
}
});
基本上,“开放”消息应仅在美国东部标准时间上午 10 点至晚上 8 点、美国东部标准时间周日至周四和美国东部标准时间上午 10 点至周五下午 4 点之间显示。
我与 UST 合作没有问题,我只需要帮助找出夏令时的解决方法,因为这超出了我的知识领域。
【问题讨论】:
-
getDay不是 UTC 版本,因此取决于位置,也许您的意思是getUTCDay。 -
可以查看夏令时是否生效stackoverflow.com/questions/11887934/…
-
@jorgebg 仅适用于客户端机器上的本地时区。并非每个地方都会同时更改为 DST,有些地方根本不会。
-
@jorgebg 我使用这个 + EST 偏移量来编写我的脚本。发布答案,我会接受。
标签: javascript jquery datetime utc dst