【发布时间】:2014-03-19 17:27:46
【问题描述】:
我正在尝试存储我的脚本,该脚本从 23,000 开始计数,以始终继续显示它是“实时”的,并且始终使用 Web 存储进行计数。我已经尝试过实现这一点,到目前为止,我似乎无法让它发挥作用。什么是最好的解决方案来让它工作并且即使在刷新等时也能始终计数? I've included my JS Fiddle 和下面的代码。任何帮助都将不胜感激!
编辑:澄清..我试图让一个“实时”计数器始终运行,无论您何时访问页面,刷新它,无论如何。就像我的脚本一样,它总是会变得越来越大。但是,每次我刷新它都会从 23,000 开始。
HTML
<span id="liveNumbers">23,000</span>
JS
if(typeof(Storage)!=="undefined")
{
setInterval(function(){
random = (Math.floor((Math.random()*2)+1));
var plus = Math.random() < 0.5 ? 1 : 1;
random = random * plus;
currentnumber = document.getElementById('liveNumbers');
var curnum = parseInt(currentnumber.innerHTML.replace(",",""));
document.getElementById('liveNumbers').innerHTML =
commaSeparateNumber(curnum + random);
}, 3000);
function commaSeparateNumber(val){
while (/(\d+)(\d{3})/.test(val.toString())){
val = val.toString().replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,");
}
return val;
}
}
else
{
// Sorry! No Web Storage support..
}
【问题讨论】:
-
不清楚你想做什么。您需要将数字存储在本地存储中还是存储脚本?
-
@TilwinJoy 试图存储这些数字以继续计数,所以假设它最初从 23,000 开始,但 12 天后我回到同一页面,它可能是 120,000(只是假设)。本质上,我试图让一个“实时”计数器始终运行,无论您何时访问页面,刷新它,无论如何。它总是在不断发展壮大。
-
如果没有一些服务器端代码,这是不可能的。 Javascript 根据请求执行 - 它不会一直保持活动状态。
-
您不能在没有客户端的情况下执行客户端脚本。一旦用户离开您的页面,您的脚本将停止执行。您可以增加存储在本地存储中的数字,然后从该保存的值恢复。
-
你不能用 javascript 做到这一点,即使是本地存储
标签: javascript jquery html css web-storage