如何使用localStorage显示hide div,例如如果我选择IT,onload show div IT。
我的js代码
itlang = document.getElementById('LangIT');
itlang.onclick = function(event) {
localStorage.setItem('a_avlang', '1');
$('.avlan').hide();
$('.av-it').show();
};
if (a_avlang === '1') {
localStorage.getItem('a_avlang', '1');
$('.avlan').hide();
$('.av-it').show();
} else {
localStorage.setItem('a_avlang', '0');
$('.av-it').hide();
}
}
我的按钮html
<a class="avlangbuttons" href="#it" id="LangIT" target="_self">IT</a>
<a class="avlangbuttons" href="#en" id="LangEN" target="_self">EN</a>
我的div显示/隐藏html
<div class="avlan av-it" style="display:none;">
IT
</div>
<div class="avlan av-en">
EN
</div>
答案 0 :(得分:1)
您的语法无效。
localStorage.getItem('a_avlang', '1');
无效,getItem上只有一个参数我的猜测是你的意思
function toggleAV(lang) {
$('.av-it').toggle(lang=="LangIT");
$('.av-en').toggle(lang=="LangEN");
localStorage.setItem('a_avlang', lang); // saves LangEN or LangIT
}
$(function() { // onload
$('.avlangbuttons').on("click", function(event) {
event.preventDefault(); // stop the click
toggleAV(this.id);
});
toggleAV(localStorage.getItem('a_avlang') || "LangEN"); // if exists otherwise english
});
或者使用数据属性代替解析ID