[英]Javascript check if server time is greater than or less than 9am EST
[英]Javascript - Only allow if less than 9am EST
我有一个 WordPress / WooCommerce 网站。 在结帐页面上,我有一个日期选择器,允许用户选择发货日期。 我允许在美国东部标准时间上午 9 点前当天发货,无论当地时间如何。
// Same shipping up till 9am EST
var shipTime = 0;
var currentTime = new Date();
if (currentTime.getHours() >=9){
shipTime = 1;
}
$( ".shipdate").datepicker( {
minDate: shipTime
});
问题是服务器时间是UTC。 我需要调整脚本,以便相应地处理美国东部时间上午 9 点之后下的订单。
我曾尝试使用 get getUTCHours 来计算美国东部时间上午 9 点,但我不太确定这是这样做的方法。
// Same shipping up till 9am
// UTC time at 9am is 13
var shipTime = 0;
var currentTime = new Date();
if ( currentTime.getUTCHours() >= 13 ) {
shipTime = 1;
}
$( ".add_delivery_date").datepicker( {
minDate: shipTime,
firstDay: 0,
beforeShowDay: setHolidays
});
任何更新此脚本的帮助将不胜感激。
JavaScript 本机 Date 对象只知道两个时区,UTC 和用户的语言环境时区(即使如此,您可以提取的有关语言环境时区的信息量是有限的)。 你可以在 UTC 工作并减去 4 小时得到 EDT,但你真的总是想要 EDT 而不是 EST 吗? 我建议您使用一个库,我认为您可以尝试使用 moment.js 在时区之间进行转换
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.