Javascript 初学者在这里-点击游戏定时器重置

Javascript 初学者在这里-点击游戏定时器重置,javascript,html,Javascript,Html,好的,我正在尝试制作一个非常简单的点击游戏,学习一些基本的javascript。 到目前为止一切都很好。。。我有多个业务,随着时间的推移产生资金(每一个业务我都有计时器)。 问题是,如果您刷新业务页面,生产将停止,您必须重新启动。 例如,我有一家“咖啡店”,每y秒生产x美元。 通过单击按钮触发生产。 我想做的是。。如果您启动生产并刷新页面,则刷新后的生产应使用上一剩余时间自动触发 window.onload += function(e){ //restart the timers wit

好的,我正在尝试制作一个非常简单的点击游戏,学习一些基本的javascript。 到目前为止一切都很好。。。我有多个业务,随着时间的推移产生资金(每一个业务我都有计时器)。 问题是,如果您刷新业务页面,生产将停止,您必须重新启动。 例如,我有一家“咖啡店”,每y秒生产x美元。 通过单击按钮触发生产。 我想做的是。。如果您启动生产并刷新页面,则刷新后的生产应使用上一剩余时间自动触发

window.onload += function(e){
    //restart the timers with the remaining time.
}
这就是我要做的:

var cafeBar = document.getElementById("cafeBar");
cafeBar.max = +cafeTimer;
function cafeframe() { 
    cafeBar.value += 0.01; 
}
-这是咖啡店的计时器:

var cafeBar = document.getElementById("cafeBar");
cafeBar.max = +cafeTimer;
function cafeframe() { 
    cafeBar.value += 0.01; 
}
-这是开始生产的按钮:

var cafeBar = document.getElementById("cafeBar");
cafeBar.max = +cafeTimer;
function cafeframe() { 
    cafeBar.value += 0.01; 
}
-这是我试图在cafeTimer声明中添加的内容:

var cafeBar = document.getElementById("cafeBar");
cafeBar.max = +cafeTimer;
function cafeframe() { 
    cafeBar.value += 0.01; 
}
if(localStorage.cafeTimeleft){cafeTimer=localStorage.cafeTimeleft;
if(cafeLevel>0){if(waitingC<1){
设置超时(produceCafe,+cafeTimer*1000);
startTimer3(+cafeTimer);
var cafeFrame=setInterval(“cafeFrame()”,10);
cafeButton.style.backgroundColor=“#FF6666”;
} }
if(localStorage.cafeTimer){cafeTimer=localStorage.cafeTimer}
localStorage.removietem(“cafeTimeleft”);
}
(produceCafe与上面onclick中使用的功能相同) 除了上面的代码,我还添加了
timeLeft=secs3并且每当上面的计时器执行“dispWaitCafe.innerHTML=secs3;”时,我都将其放入本地存储中


我不知道,我是不是错过了什么?看来我的添加物把事情搞砸了。有什么建议吗?谢谢大家!

您要做的是创建一个onbeforeunload处理程序,用于存储所有业务的剩余计时器长度:

window.onbeforeunload += function(e) {
    //store the remaining timer length
};
然后在window.Load上,用剩余的时间实例化计时器

window.onload += function(e){
    //restart the timers with the remaining time.
}

注意:这会暂停计时器。如果希望用户能够在关闭窗口的情况下空闲(就像许多单击器一样),则必须在
window.onbeforeunload()
期间存储准确的系统时间,然后计算从那时起在
window.load()上运行的计时器数量

您要做的是创建一个onbeforeunload处理程序,用于存储所有业务的剩余计时器长度:

window.onbeforeunload += function(e) {
    //store the remaining timer length
};
然后在window.Load上,用剩余的时间实例化计时器

window.onload += function(e){
    //restart the timers with the remaining time.
}

注意:这会暂停计时器。如果您想让用户能够在关闭窗口的情况下空闲(就像许多点击器一样),您必须在
window.onbeforeunload()
期间存储准确的系统时间,然后计算从那时起在
window.load()

上可以运行多少计时器。好的,我在我说添加的代码中添加了“ice”而不是“cafe”。你可以编辑你自己的问题来纠正拼写错误。好的,我在我说添加的代码中用了“ice”而不是“cafe”。只要把它看成是“cafeTimeLeft,cafeTimer,等等”,你就可以编辑你自己的问题来纠正打字错误。