大家好,您可以帮我吗?我想使用本地存储javascript。但我的代码无法正常工作。我想使用本地存储javascript保存显示隐藏状态,但是我的显示隐藏状态无法保存,并且在刷新时总是回到隐藏状态。
这是我的javascript代码:
$(document).ready(function() {
var showText='Show';
var hideText='Hide';
var is_visible = false;
$('.toggle').prev().append(' <a href="#" class="toggleLink">'+showText+'</a>');
$('.toggle').hide();
$('a.toggleLink').click(function() {
if ($(this).text()==showText) {
localStorage.setItem('showText', true);
$(this).text(hideText);
$(this).parent().next('.toggle').slideDown('fast');
} else {
localStorage.setItem('showText', false);
$(this).text(showText);
$(this).parent().next('.toggle').slideUp('fast');
}
return false;
});
var hideText = localStorage.getItem('Hide') === 'false' ? false : Show;
$('a.toggleLink').toggle(hideText);
});
谢谢。
*对不起,我的英语不好
答案 0 :(得分:1)
您没有在LocalStorage
中设置键“隐藏”,因此单击功能后,它将始终为false
。您必须将其更改为:
var hideText = localStorage.getItem('showText') === false ? 'Hide' : 'Show';
答案 1 :(得分:1)
在本地存储中,您没有使用“隐藏”关键字保存任何内容。因此,根据以下语句,您的本地存储将无法获得任何价值。
var hideText = localStorage.getItem('Hide') === 'false' ? false : Show;
所以只需将'Hide'更改为'showText'。
$(document).ready(function() {
var showText='Show';
var hideText='Hide';
var is_visible = false;
$('.toggle').prev().append(' <a href="#" class="toggleLink">showText</a>');
$('.toggle').hide();
$('a.toggleLink').click(function() {
if ($(this).text()==showText) {
localStorage.setItem('showText', true);
$(this).text(hideText);
$(this).parent().next('.toggle').slideDown('fast');
} else {
localStorage.setItem('showText', false);
$(this).text(showText);
$(this).parent().next('.toggle').slideUp('fast');
}
return false;
});
var hideText = localStorage.getItem('showText') === 'false' ? false : Show;
$('a.toggleLink').toggle(hideText);
});