0

Jqueryで開始時刻と終了時刻を設定したい、例えば17時34分から18時56分の間ならコンテンツを表示したい。現在の時刻を見つけるこの方法を見つけました:

  $.getJSON("http://json-time.appspot.com/time.json?tz="+timezone+"&callback=?",
    function(data){
      ......
    })

data.hourは時間を返し、 data.minuteは分を返し、 data.secondは秒を返します。

これから、時間をミリ秒に変換してから、ミリ秒に基づいてifステートメントを作成することを考えていましたか? しかし、どうすればこれを行うことができますか?

ありがとう!

4

2 に答える 2

0
var now = new Date()
var now_utc = new Date(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(),  now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds());
var startdate_utc = new Date(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(),  17, 34, 0);
var enddate_utc = new Date(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(),  18, 56, 0);

if((now_utc > startdate_utc) && (now_utc < enddate_utc)) {
  // Show content   
}
于 2013-05-15T16:18:23.827 に答える
0

このクライアント側で (JavaScript/jQuery を使用して) 実行すると、ユーザーは JavaScript をハックしてロジックを変更し、保護したいコンテンツを取得できます。

開発者やハッカーによる操作を避けるために、サーバー側に時間検証を配置する必要があります。日付と時刻を取得するための Ajax 呼び出しでさえ役に立ちません。その Ajax 呼び出しの成功関数にブレークポイントを設定し、残りのコードを実行できるようにする前に結果を変更できるからです。実際、システム時刻を変更するよりも、これを行う方がはるかに安全です。これは、コンピューターの他の部分に影響を与えないためです。

于 2013-05-15T16:31:32.057 に答える