我正在使用FlipClock.js倒计时时钟直到新的一年。我想把它改为倒数到当地时间早上8点。我对如何做到这一点感到有点困惑。
以下是我目前使用的脚本:
var clock;
$(function() {
var currentDate = new Date();
var futureDate = new Date(currentDate.getFullYear() + 1, 0, 1);
var diff = futureDate.getTime() / 1000 - currentDate.getTime() / 1000;
clock = $('.clock').FlipClock(diff, {
clockFace: 'DailyCounter',
countdown: true
});
});
修改 的
我尝试将代码更改为:
var clock;
$(function() {
var currentDate = new Date();
var futureDate = new Date(Date.UTC(2014, 0, 01, 08, 0, 0));
var diff = futureDate.getTime() / 1000 - currentDate.getTime() / 1000;
clock = $('.clock').FlipClock(diff, {
clockFace: 'DailyCounter',
countdown: true
});
});
这一行
var futureDate = new Date(currentDate.getFullYear() + 1, 0, 1);
更改为此行:
var futureDate = new Date(Date.UTC(2014, 0, 01, 08, 0, 0));
当我这样做时,倒计时时钟增加了一个小时。它应该增加更多,因为时间是从早上12点到早上8点。我做错了什么以及如何纠正它?
答案 0 :(得分:1)
正如Lix
所说,你应该修改futureDate
。如果您有问题,我的建议是阅读Javascript语言中的预定义Date
对象。 Here is a good reference
Date
对象的有效定义之一如下所示:
new Date(year, month [, day, hour, minute, second, millisecond]);
明年成功找到(currentDate.getFullYear() + 1
)后,您所要做的就是正确填写其余参数。
小心 - 在Javascript Date
对象中,只有一个月相对于其他人计算违反直觉:0-11
。