我的错误是,当您加载游戏时,值会变为活动状态(它们会起作用并递增)但数字不会加载。
我已经设置了一个codepen,您可以在其中查看我的所有代码并自行检查错误
现在山露将每秒自动点击,但不会显示mntDew值。
请帮忙,谢谢你查看这个问题:)
var faze = 0;
function fazeClick(number){
faze = faze + number;
document.getElementById('faze').innerHTML = faze;
var randomcolor = '#'+Math.floor(Math.random()*16777215).toString(16);
scoep.style.color = randomcolor;
}
var mntDew = 0;
function buyDew(){
var mntDewCost = Math.floor(10 * Math.pow(1.2,mntDew));
if(faze >= mntDewCost){
mntDew = mntDew +1;
faze = faze - mntDewCost;
document.getElementById('mntDew').innerHTML = mntDew;
document.getElementById('faze').innerHTML = faze;
};
var nextCost = Math.floor(10 * Math.pow(1.2,mntDew));
document.getElementById('mntDewCost').innerHTML = nextCost;
};
function save(){
localStorage.setItem('faze', JSON.stringify(faze));
localStorage.setItem('mntDew', JSON.stringify(mntDew));
localStorage.setItem('mntDewCost', JSON.stringify(mntDewCost));
//add more here
};
function load(){
if (localStorage.getItem('mntDew')){
mntDew = JSON.parse(localStorage['mntDew']);
};
if (localStorage.getItem('faze')){
faze = JSON.parse(localStorage['faze']);
};
if (localStorage.getItem('mntDewCost')){
mntDewCost = JSON.parse(localStorage['mntDewCost']);
};
//add more here
};
function deleteSave(){
localStorage.removeItem("save");
};
window.setInterval(function(){
fazeClick(mntDew);
}, 1000);
// <button type="button" onClick="buyDew()">Buy Mountain Dew</button> #buyCursor
//Mountain Dew: <span id="mntDew">0</span><br/> #cursors
//cost: <span id="mntDewCost">10</span> #cursorCost
答案 0 :(得分:1)
我发现如果我没有点击图像至少11次,那么当我点击山露时什么也没发生。我可以保存它,然后点击加载,数字没有改变。问题实际上不是JavaScript,而是应用程序的设计。设置方式,用户必须至少点击图像11次。之后,当用户点击山露时,您会看到数字发生变化。只要用户不知道点击图像,那么变量faze的值为0,这意味着此条件将返回false:
if(faze >= mntDewCost){
mntDew = mntDew +1;
faze = faze - mntDewCost;
document.getElementById('mntDew').innerHTML = mntDew;
document.getElementById('faze').innerHTML = faze;
};
在byDew()中。因此,faze会以零值保存,其零值也会加载。