gpt4 book ai didi

JavaScript 倒计时

转载 作者:行者123 更新时间:2023-12-02 19:21:10 28 4
gpt4 key购买 nike

我正在使用this plugin进行倒计时。在他的例子中,他正在倒计时澳大利亚国庆日

$(function () {
var countdownDate = new Date();
countdownDate = new Date(countdownDate.getFullYear() + 1, 1 - 1, 26);
$('#countdown').countdown({until: countdownDate});
$('#year').text(countdownDate.getFullYear());
});

我需要它倒计时至 2012 年 11 月 6 日星期二美国东部时间晚上 8 点,但我不知道如何自定义它。 Date() 函数让我感到困惑。

最佳答案

上面显示的Date构造函数的格式为new Date(Year, Month, Day)。但是,请记住,Month 参数是从 0 索引的。这意味着一月是 0,而不是 1。因此,要倒计时到 2012 年 11 月 6 日,您需要像这样构造日期:

countdownDate = new Date(2012, 10, 6);

您也可以考虑这样做:

countdownDate = new Date(2012, 11-1, 6);

这与示例所示类似。但它只会不必要地减慢速度,以便更清楚您所指的是哪个月份。

此外,如果您构造一个不带参数的 Date 对象,它会为您提供当前日期。因此,new Date() 为您提供了一个相当于“现在”的日期对象。在示例中,他们使用(有效)(new Date()).getFullYear() 来获取当前年份。然后,他们将其加一并将其传递到新的 Date 构造函数中,以获得“下一个”澳大利亚日之前的时间。

需要注意的是,澳大利亚国庆日示例实际上有一个错误。如果当前是一月,则年份将不必要地增加,并且倒计时将显示直到下一年澳大利亚国庆日的时间。因此,在示例中,倒计时永远不会低于 26 天。哎呀。 :-)

更新:

要么你的问题已更新,要么我第一次错过了这个问题。看起来您想在美国东部时间晚上 8 点结束。使用数字日期构造函数实际上非常棘手。由于 JavaScript 在客户端运行并默认使用“本地时间”,因此您需要明确记下时区。您可以使用 setter 的 setUTC 版本(例如 setUTCHours())来完成此操作,但这有点烦人,并且需要几行代码。因此,最好的选择是使用 Date 的基于字符串的构造函数:

new Date("November 6, 2012 20:00:00 GMT -5:00")

关于JavaScript 倒计时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12517858/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com