Javascript 后退按钮/bfcache:返回时,通过jquery隐藏在DOM中的对象是否再次可见?
我有一个网页,第一次访问时会出现一个框 在网站的其他部分,有“后退”按钮,当然还有浏览器后退按钮 但是,当使用“后退”按钮(浏览器或html)时,该框再次可见 是否有办法确保返回时该框不会再次显示?即使使用Javascript 后退按钮/bfcache:返回时,通过jquery隐藏在DOM中的对象是否再次可见?,javascript,jquery,html,Javascript,Jquery,Html,我有一个网页,第一次访问时会出现一个框 在网站的其他部分,有“后退”按钮,当然还有浏览器后退按钮 但是,当使用“后退”按钮(浏览器或html)时,该框再次可见 是否有办法确保返回时该框不会再次显示?即使使用.remove()完全删除对象也不起作用 我在这里举了一个例子: 首先,单击链接隐藏框,然后单击第二个链接继续 HTML: HTML/JS(后退按钮): 重新加载页面后,通过javascript对dom所做的任何修改都会重置为初始状态。因此,要么使用ajax(例如,我相信使用jquery.l
.remove()
完全删除对象也不起作用
我在这里举了一个例子:
首先,单击链接隐藏框,然后单击第二个链接继续
HTML:
HTML/JS(后退按钮):
重新加载页面后,通过javascript对dom所做的任何修改都会重置为初始状态。因此,要么使用ajax(例如,我相信使用jquery.load)避免重新加载整个页面,要么提供一个url参数,可以通过jquery()进行检查
最后一个解决方案是使用cookies保存信息。是的,不幸的是,我已经为cookies设置了一个解决方案,但除非完全重新加载页面(PHP将再次检查cookie,因为cookie在back事件中也没有被检查),否则这不起作用。我们只需使用jquery读取cookies即可。我不明白你为什么需要php来达到这个目的
<div id="hide-on-back">
Make this go away
</div>
<a href="#" id="hide-box">1. Click First To Hide</a><br/>
<br/>
<a href="http://jsbin.com/tipup/1/">2. Go Forward</a>
$(document).ready(function(){
$('a#hide-box').click(function(e){
e.preventDefault();
$('#hide-on-back').fadeOut();
});
});
<a id="go-back" href="#" onclick="function(){history.go(-1);}">Go Back</a>