这是我正在使用的倒计时器的代码。如果用户重新加载页面,倒计时将再次开始。 我希望倒数第一次用户访问该页面后继续运行,而不管他是否关闭该页面。请提出一种方法。我认为创建会话可能会有帮助,但我对会话不了解。倒计时器不应该停止
<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>
当他们第一次访问计数器时,你可以放弃一个cookie。在随后的访问中,只需抵消此时的倒计时。 – Stu
由于您不知道用户将在哪一点关闭窗口或刷新页面,因此您需要将计数器保存在一些持久性存储中,例如cookie(最佳跨浏览器解决方案),本地存储等。下一次页面加载从上次保存的值开始 – Amnon