我找到了这个小提琴: https://jsfiddle.net/DinoMyte/sac63azn/3/
https://fiddle.jshell.net/DinoMyte/sac63azn/3/show/
var num = 10000000;
setInterval(function()
{
num++;
console.log(num);
$('div').text(num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","));
},6000);
它几乎按照我想要的方式工作。它是一个计数器,每6秒钟,它会在数字上加1。例如:数字从10,000,000开始,然后每6秒开始,它会在数字上加1。问题是当用户刷新或重新加载页面时,该数字将恢复为原始的10,000,000。如果刷新或重新加载后,是否可以从上次保存号码?坚持?例如:数字现在是10,000,008,6秒后它是10,000,009,然后用户点击或刷新或重新加载页面,它应该记住最后一个数字的位置:10,000,009并从那里开始计数。
答案 0 :(得分:1)
您可以使用localStorage
。
只需使用此代码
var num = localStorage.getItem('evaluatedTimer') || 10000000;
setInterval(function()
{
num++;
console.log(num);
var currentTimer = num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
localStorage.setItem('evaluatedTimer', currentTimer');
$('div').text(currentTimer );
},6000);
答案 1 :(得分:0)
您可以将var num值设置为javascript cookie。您可以使用以下javascript代码来创建,读取或删除cookie val
AnyObject
因此,在您的情况下,您可以像这样持有num值
var num = 10000000;
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
function eraseCookie(name) {
createCookie(name,"",-1);
}