返回按钮/bfcache:通过jquery隐藏在DOM中的对象在返回时再次可见
Back button / bfcache: Object hidden in DOM via jquery is visible again when going back?
我有一个网页,第一次访问时会出现一个框。
在网站的其他部分,有"后退"按钮,当然还有浏览器后退按钮。
但是,当使用后退按钮(浏览器或html)时,该框将再次可见。
有没有办法确保盒子在回去时不会再次显示?即使使用.remove()
完全移除对象也不起作用。
我在这里做了一个jsbin的例子:
http://jsbin.com/losilu/2/
首先,单击链接隐藏框,然后单击第二个链接继续。
HTML:
<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>
JS:
$(document).ready(function(){
$('a#hide-box').click(function(e){
e.preventDefault();
$('#hide-on-back').fadeOut();
});
});
HTML/JS(返回按钮):
<a id="go-back" href="#" onclick="function(){history.go(-1);}">Go Back</a>
一旦重新加载页面,您通过javascript对dom所做的任何修改都将重置为其初始状态。因此,要么使用ajax(例如,我相信使用jquery.load)来避免重新加载整个页面,要么提供一个可以通过jquery检查的url参数(获取url参数jquery或如何在js中获取查询字符串值)
最后的解决方案是使用cookie保存信息。
相关文章:
- javascript函数,它接受两个输入:一个对象和一个键,并返回对象中该键的相应值
- 通过数组值返回对象
- JavaScript:返回对象的函数
- 为什么document.getElementsByClassName(“className”)返回对象
- 如何返回对象
- Promise没有;t返回对象的数组
- 面料:“;鼠标:向下”;在event.target中未返回对象
- Lodash:返回对象的第一个键,该对象的值(即数组)中有一个给定的元素(即字符串)
- Javascript:返回对象
- 为什么 javascript 返回对象位置 true 或 false
- 解析查询查找方法返回对象而不是数组
- 来自函数的返回对象在 jQuery 中未从 $.post 定义
- JavaScript 返回对象未按预期工作
- 返回“[对象对象] NaN” - Javascript
- 何时从创建返回对象
- Javascript:接收对象并返回对象中描述的所有数字的列表的函数
- JSDoc:返回对象结构
- node.js请求返回对象
- 返回对象的ECMAScript 6箭头函数
- 如何从控制器返回对象列表并使用JQuery(SpringMVC,ajax)显示它们