倒数计时器不应该停止

时间:2014-03-05 11:45:05

标签: javascript

这是我正在使用的倒计时代码。如果用户重新加载页面,则倒计时再次开始。 我希望倒计时在用户第一次访问该页面后继续运行,无论他是否关闭页面。请建议一种方法。我认为创建会话可能会有所帮助,但我不知道会话。

<span id="countdown" class="timer"></span>
<script>
var seconds =120;
function secondPassed() {
var minutes = Math.round((seconds - 30)/60);
var remainingSeconds = seconds % 60;
if (remainingSeconds < 10) {
    remainingSeconds = "0" + remainingSeconds;  
}
document.getElementById('countdown').innerHTML = minutes + ":" + remainingSeconds;
if (seconds == 0) {
    clearInterval(countdownTimer);
    document.getElementById('bonus').innerHTML = "Buzz Buzz";
} else {
    seconds--;
}
}

var countdownTimer = setInterval('secondPassed()', 1000);
</script>

1 个答案:

答案 0 :(得分:0)

问题并不完全。你想要一个“永远”或“第一次访问页面后”一段时间的计数器。

对于第一个,您需要依靠服务器端(例如,您可以创建一个数据库 - 或一个文件,或任何您喜欢保存的东西),并以某种方式识别用户,并获得第一个他访问的时间。然后在每次用户登录时发回这些信息,并在js中计算客户端,就像你一样。

对于第二个,你可以发送一个带有他第一次访问的时间戳的cookie,或者在会话中保存这个信息,并在每次用户访问页面时使用它。