如何解决同一网络会话中的永久计数器
尝试在网页上创建一个计数器,该计数器不会在同一用户会话内的每个不同页面视图上重新启动。当前使用此代码(Praveen Kumar Purushothaman使用thanks),但是每次查看其他页面时,此计数器都会重置。
setTimeout(start,0);
var i = 0;
var num = document.getElementById("number");
function start() {
increase();
setInterval(increase,1000);
}
function increase() {
if (i < 100000) {
i += 10.41;
num.innerText = i.toFixed(2);
}
}
<span id="number"></span>
解决方法
我的建议是将变量存储到会话存储中。我在评论中添加了更多详细信息:
setTimeout(start,0);
// You're saving your current value here.
// Let's use localStorage. Set the i value if it doesn't exist for the first time.
if (!localStorage.getItem("i")) {
localStorage.setItem("i",0);
}
var num = document.getElementById("number");
function start() {
increase();
setInterval(increase,1000);
}
function increase() {
var i = localStorage.getItem("i");
if (i < 100000) {
i += 10.41;
// When you're making any changes,make changes to the localStorage too.
localStorage.setItem("i",i);
num.innerText = i.toFixed(2);
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。