-2

たとえば、商品がカートに追加されたときに、商品が 30 分間だけ表示されるようにタイマーを設定したいと考えています。私は試した :-

var d = new Date();

var minute = d.getHours()+30;

また、ユーザーに残り時間を表示したい(カウントダウン)

私はこれが間違っていることを知っています。jQueryを使用してこれを行いたいです。私はjqueryが初めてですこれについて私を助けてください

前もって感謝します。

4

3 に答える 3

12

ええ、これはある程度正しいですが、ユーザーに残り時間を表示したい、つまりカウントダウンを開始する必要があります。

わかりました、これはどうですか:

var countdown = 30 * 60 * 1000;
var timerId = setInterval(function(){
  countdown -= 1000;
  var min = Math.floor(countdown / (60 * 1000));
  //var sec = Math.floor(countdown - (min * 60 * 1000));  // wrong
  var sec = Math.floor((countdown - (min * 60 * 1000)) / 1000);  //correct

  if (countdown <= 0) {
     alert("30 min!");
     clearInterval(timerId);
     //doSomething();
  } else {
     $("#countTime").html(min + " : " + sec);
  }

}, 1000); //1000ms. = 1sec.

または、次のプラグインを使用することをお勧めします: http://www.tripwiremagazine.com/2012/09/jquery-countdown-scripts.html

于 2012-11-11T06:08:01.060 に答える
3

ここで JavaScript タイマーを見ることができます。30分の時間が必要な場合は、試してみてください

var timer = window.setInterval(function()
{
    //doSomething
}, 1800000);

編集

後で再びオフにならないようにするには、次を使用しますwindow.clearInterval(timer);

編集

必要に応じて、1 つの大きなタイマーではなく、経過した時間を追跡できます。

var startTime = (new Date()).getTime();
var secondsLeft;
var timer = window.setInterval(function()
{
    var now = (new Date()).getTime();
    secondsLeft = 1800 - ((now - startTime) / 1000);
    //do something here to display secondsLeft
}
于 2012-11-11T05:52:43.107 に答える
2

Javascript で実行する場合は、次のようにします。

var waitTime = 30 * 60 * 1000; // = 30min.

setTimeout(function(){
  alert("30 min!");
}, waitTime);

また、jQuery を使用する場合は、jQuery Timer プラグインを使用できます。 http://jquery.offput.ca/every/

しかし、PHP を使用し、システムがショッピング カート (または何か) である場合は、PHP のセッション メカニズムを使用する必要があると思います。

于 2012-11-11T05:59:09.223 に答える