0
使用jQuery和localStorage,我想跟蹤玩家贏得遊戲的次數。每次提交表格時,勝出或失敗次數都取決於誰勝出。計數器工作正常,但由於某種原因,清除計數的功能不起作用。我一直在使用與其他變量removeItem()
相同的功能,它一直工作正常。在localStorage中使用.removeItem
var nicwincount;
var niclosscount;
$('#dostuff').click(function(e) {
e.preventDefault();
if (playerName === 'nic' && tempresult === win) {
nicwincount = JSON.parse(localStorage.getItem (nicwincount));
nicwincount += 1;
localStorage.setItem(nicwincount, JSON.stringify(nicwincount));
console.log(localStorage.getItem(nicwincount));
console.log(nicwincount);
}
else if (playerName === 'nic' && tempresult === loss) {
losscount = JSON.parse(localStorage.getItem(niclosscount));
losscount += 1;
localStorage.setItem (niclosscount, losscount);
console.log(localStorage.getItem(niclosscount));
}
}
我一直在使用.setItem()
設置計數爲0。我一直在使用.removeItem
也嘗試嘗試。無法讓他們中的任何一個爲我工作,也無法弄清楚原因。
$('#clear').click(function(e){
e.preventDefault();
localStorage.setItem('nicwincount', 0);
localStorage.setItem('niclosscount', 0);
}
謝謝!
UPDATE:
此代碼使用本地存儲
var nicScoreList = JSON.parse(localStorage.getItem('nicscorelist') || '[]');
var niccount = 0;
var nicTotalScore = nicScoreList.reduce(function(total, score) {
if (score === " " || total === " ") {
niccount++;
}
return +total + +score;
});
我從localStorage的獲得該項目是一個單獨的頁面上的定義爲:
scorelist = JSON.parse(localStorage.getItem(playerName + 'scorelist') || '[]');
scorelist.push(" ");
localStorage.setItem(playerName + 'scorelist', JSON.stringify(scorelist));
$('div.scorecolumn', column).html("Score: <br>" + scorelist.join('<br>'));
我知道我跳過了一堆的代碼似乎,所以讓我知道如果沒有意義。
此代碼的工作,但原來的例子仍然是不nicwincount和niclosscount
IM白癡。謝謝 – 2012-03-02 00:27:39
沒問題。有時很容易忽略這些明顯的東西,特別是在你自己的代碼中。 – 2012-03-02 00:29:03
任何想法爲什麼當我使用console.log(localStorage.getItem('nicwincount'));在另一個頁面,它只是一直給我0?我有一種感覺即時通訊混合了一些字符串/變量相關但不確定 – 2012-03-02 00:43:39