我试图在点击另一个按钮后隐藏按钮,但是当页面刷新时,隐藏按钮会再次显示。我想保持隐藏,即使我刷新页面并仅在我点击显示按钮时显示它。 任何帮助将不胜感激。
HTML:
<button type="button" class="showhide">Show / Hide</button>
<button type="button" class="link">Link</button>
JS:
$('.showhide').click(function(){
$('.link').hide();
});
答案 0 :(得分:6)
您可以使用localStorage通过以下代码在客户端处理它。 或者您需要在服务器脚本中使用sessionStorage。
if(localStorage.getItem('isHide'))
$('.link').hide();
$('.showhide').click(function(){
$('.link').hide();
localStorage.setItem('isHide',true);
});
答案 1 :(得分:5)
像@Kartikeya所说,使用localStorage。
单击按钮时设置它。在页面加载时,检查localStorage的值以更新按钮的可见性。
$('.showhide').click(function(){
$('.link').toggle();
var isVisible = $('.link').is(":visible");
localStorage.setItem('visible', isVisible);
});
// stored in localStorage as string, `toggle` needs boolean
var isVisible = localStorage.getItem('visible') === 'false' ? false : true;
$('.link').toggle(isVisible);
答案 2 :(得分:2)
如果您希望按钮在关闭浏览器后保持隐藏状态,您应该考虑使用localStorage
,更多信息here,否则我建议使用sessionStorage
类似于会话,这意味着当您关闭浏览器时,将删除存储在会话存储上的所有内容。您可以阅读有关会话存储here
基本上你需要使用两个功能。 getItem
和setItem
。这是使用sessionStorage
的演示,但也适用于localStorage
:
$(document).ready(function(){
if(sessionStorage.getItem('isBtnHidden')){
$('.link').hide();
}
$('.link').click(function(){
$('.link').hide();
sessionStorage.setItem('isBtnHidden', true);
});
});