在刷新时不会重置的倒计时器
var test;
var pageVisisted = new Date();
test = setInterval(function () {
var timeOnSite = new Date() - pageVisisted;
var secondsTotal = timeOnSite / 1000;
var minutes = Math.floor(secondsTotal / 60) % 3600;
var seconds = Math.floor(secondsTotal) % 60;
document.getElementById('counter').innerHTML = minutes + "." + seconds;
}, 1000);
我花了很多时间来设置计时器。但是无法完成它。任何人都知道如何解决这些错误。 例如: 如果我在1.26秒刷新这些页面,倒计时再次开始为0.但是它必须在刷新后以1.26开始。你能解决这个并告诉我如何修复它。
答案 0 :(得分:0)
您可以将pageVisited
值存储在localStorage
中(或者更好,我猜在sessionStorage
中):
var pageVisited = +localStorage.pageVisited || +new Date();
var test = setInterval(function() {
var timeOnSite = new Date() - pageVisited;
var secondsTotal = timeOnSite / 1000;
var minutes = Math.floor(secondsTotal / 60) % 3600;
var seconds = Math.floor(secondsTotal) % 60;
document.getElementById('counter').innerHTML = minutes + "." + seconds;
}, 1000);
if (!localStorage.pageVisited) {
localStorage.pageVisited = pageVisited;
}
如果您希望在关闭浏览器窗口后清除计时器,请使用sessionStorage
。
IE支持:IE8 +。