Javascript では、getDate() メソッドを呼び出すたびに、月の特定の日に 1 ~ 31 の値が返されます。これにより、31 より大きい将来の日付を指定すると、カウントダウン タイマーに問題が発生します。var goal
これにより、カウントダウン タイマーは、将来の日付までの実際の残り日数ではなく「12」を出力します。
function twoDigits(number) {return (number < 10 ? '0' : '') + number};
var goal = "Sun January 01 2012 00:00:01";
goal = new Date(goal);
var now = new Date();
var count = new Date(goal.getTime() - now.getTime());
var day = count.getDate() -1;
var hour = count.getHours()-1;
var format = twoDigits(day) + ":" + twoDigits(hour) + ":" + twoDigits(count.getMinutes()) + ":" + twoDigits(count.getSeconds());
$(function () {
$('#counter').countdown({
image: 'digits.png',
startTime: format
});
});
これを修正する方法はありますか?