我的代码的这一部分有一个错误,当我点击“ - ”img它会删除存储的名称,但是如果我再次点击,这次是“+”img,而不是从淡入淡出返回div,它创建一个具有相同值的新div,然后我有两个div和两个具有相同值的键。
function fade(id) {
var element = document.getElementById(id);
var arr = new Array();
$('.qualquer').each(function() {
arr.push($(this).text());
});
$(document).ready(function(){
$(element).toggle(
function a(){
$(element).fadeTo("fast", 0.5, function(){
$("<img id='maix"+ide+"'>").attr('src', 'pics/+.gif')
.appendTo(element)
.addClass("minus3");
localStorage.removeItem('artist'+id);
})
},
function b(){
$(element).fadeTo("fast", 1, function(){
$("#maix"+ide+"").remove();
localStorage.setItem('artist'+id,arr[id]);
})
});
});
}
HTML,它是在javascript上生成的,这就是为什么那些加:
"<div class='qualquer' id='"+(div+i)+"'>" + "<div onClick=location.href='artistinfo.html' class='diveText'> " + reals[i] + "</div>" + "<div class='diveImg'>" + "<img src='pics/-.png' id='"+(img+i)+"' onClick='fade(this.id)' class='minus'>" + "</div>" + "</div>"
我是否足够清楚?
答案 0 :(得分:1)
首先用此验证
var isExist = !!localStorage.getItem('localStorageVariableName');
所以,如果你弄错了,那么
localStorage.setItem('localStorageVariableName', value);
希望这有帮助。
答案 1 :(得分:0)
您可以执行以下操作来检查localStorage中是否存在值:
Storage.prototype.hasValue = function(v) {
for(var prop in this)
if(this.hasOwnProperty(prop) && localStorage[prop] === v) return true;
return false;
}
localStorage.setItem('test', 'testing 1');
localStorage.setItem('test2', 'testing 2');
localStorage.setItem('test3', 'testing 3');
console.log(localStorage.hasValue('testing 1'));