0

このプラグインを使用してカウントダウンを行います。彼の例では、彼はオーストラリアの日までカウントダウンしています

$(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 時 (EST) までカウントダウンする必要がありますが、カスタマイズ方法がわかりません。Date() 関数は私を混乱させます。

4

4 に答える 4

2

上記のDateコンストラクターの形式はnew Date(Year, Month, Day). ただし、Month引数は 0-index であることに注意してください。つまり、1 月は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次に、「次の」オーストラリアの日までの時間を取得するために、値を 1 増やして新しいコンストラクターに渡します。

オーストラリアの日の例には、実際にはバグがあることに注意してください。現在が 1 月の場合、年は不必要に増分され、カウントダウンには翌年のオーストラリア デーまでの時間が表示されます。したがって、この例では、カウントダウンが 26 日を下回ることはありません。おっと。:-)

アップデート:

あなたの質問が更新されたか、初めてこれを逃したかのどちらかです。EST の午後 8 時に終了したかったようです。数値日付コンストラクターを使用すると、実際にはかなり注意が必要です。JavaScript はクライアント側で実行され、デフォルトで「現地時間」を使用するため、タイム ゾーンを明示的に記録する必要があります。setUTCセッターのバージョン (例: )を使用してこれを行うことができますがsetUTCHours()、少し面倒で、数行のコードが必要です。したがって、最善の策は、Date の String ベースのコンストラクターを使用することです。

new Date("November 6, 2012 20:00:00 GMT -5:00")
于 2012-09-20T17:41:07.697 に答える
0

使用したいDate()コンストラクター呼び出しは、次のいずれかになります。

new Date(dateString)
new Date(year, month, day, hours, minutes, seconds, milliseconds)

大豆、あなたはすることができます

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

そしてそれはそれをするでしょう。

于 2012-09-20T17:45:23.937 に答える
0
countdownDate = new Date(2012, 10, 6, 20, 0, 0, 0);

また

countdownDate = new Date("11/6/2012 8:00 PM")

https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Dateを参照してください

于 2012-09-20T17:42:45.343 に答える
0

これらの行は、カウントダウンする日付を決定します。

var countdownDate = new Date();
countdownDate = new Date(countdownDate.getFullYear() + 1, 1 - 1, 26);

ここの最初の行は、新しい JavaScript Date オブジェクトを作成します。Date を作成すると、デフォルトで now now になります。

次の行は、構造体を使用して日付を特定の時点に設定します。

new Date(year, month, day, hours, minutes, seconds, milliseconds);

1 つずつステップを進めていきます。 1. Yearで現在の年を取得しcountdownDate.getFullYear()、1 を足して来年にします 2. 1 - 1 = 0 なので、これは最初の月 (1 月) を選択しています 3. 26 は特定の月の 26 日

修正するには、文字列表記を使用して、これらの両方の行を 1 つの行に置き換えることができます。

var countdownDate = new Date("November 6, 2012 20:00:00 EST");
于 2012-09-20T17:49:49.717 に答える