浏览器的“后退”功能与页面的级数无关。它是将一个窗口依次浏览过的多个页面按顺序排列成历史列表,每次点击“后退”按钮或用js脚本触发“后退”功能时,它将依据当前窗口的历史列表来后退展示页面。js脚本示例如下:
window.history.go(-1) //后退一页window.history.go(-2) //后退两页
以上代码中的数字为负数,表示后退,正数表示前进。
窗口浏览的页面有可能是不断重复某两个页面,那么go(-1)方法也将在这两个页面之间轮回多次。如果想要快速后退到这两个页面之前的页面,只能使用更精确的记忆方法了,浏览器自带的历史功能无法满足需求。比如,使用cookies来记录访问URL的历史,也可以记忆必要的参数,需要后退的时候直接对window.location进行赋值(重定向),跳转到想要到达的页面。
这是ajax的一个经典问题,很多框架都提供了解决方案,重点是模拟浏览器的前进后退。对于IE,可以用一个隐藏框架,对框架内容的导航会使得前进后退按钮被触发。
对以FF,可以用Hash,即改变http://www.url.com/#abc井号后面的部分,前进后退按钮同样被触发。
这样就能既让浏览器前进后退按钮被触发,同时又不离开本页面。具体方法如下:
1.resize事件 (window).resize(function() { var width = (this).width()var height = (this).height()})
2.js条用这个方法 function closewindow{ history.go(-1)}
3.<input type="button" value="后退" onClick="history.back()">或 <input type="button" value="后退" onClick="history.go(-1)">
4.window.location.replace Location对象的replace()方法将用指定的URL替换浏览器历史列表中的当前URL,而不是在历史列表中创建一个新的项,因此,就不能使用IE的后退按钮来返回原始文档了。 2.window.open(FF无效...
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)