カウントダウンタイマーを作ってみました。なんとか作成できましたが、これの問題は、ブラウザを閉じると停止することです。そのため、ユーザーがサイトに再度アクセスすると、再び再起動します。私が欲しいのは、そのタイマーを維持することです。たとえば、ユーザーがタイマー 22:14:09 にサイトを離れた場合。したがって、タイマーは続行します。ユーザーが 1 時間後に私のサイトに再度アクセスした場合、時間は 21:14:09 になるはずです。 どうやってやるの?
ここに私のJSがあります
$(function () {
var hrs, mins, secs, TimerRunning, TimerID,
Timer = {
init: function () {
hrs = 23;
mins = 59;
secs = 59;
TimerRunning = false;
Timer.StopTimer();
Timer.StartTimer();
},
StopTimer: function () {
if(TimerRunning)
clearTimeout(TimerID);
TimerRunning=false;
},
StartTimer: function () {
TimerRunning = true;
$('.timer').html(Timer.Pad(hrs) + ":" + Timer.Pad(mins) + ":" + Timer.Pad(secs));
TimerID = self.setInterval("StartTimer()", 1000);
if(hrs == 0 && mins == 0 && secs == 0)
StopTimer();
if (secs == 0) {
mins--;
secs = 59;
}
if (mins == 0) {
hrs--;
mins = 59;
}
secs--;
setTimeout(function () { Timer.StartTimer(); }, 1000);
},
Pad: function (number) {
if(number < 10)
number = 0+""+number;
return number;
}
};
Timer.init();
});
アップデート