javascript back replace 浏览器 返回按钮 历史记录

坚强是说给别人听的谎言 提交于 2019-12-27 18:05:23

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

今天看《javascript权威指南》 14.2.2 发现一个很好地方法:解决了之前的问题:

如果用户在支付页面进行了一系列操作,订单已经生成,并且使用了优惠劵等资源,那么在跳转到付款页面后又点击浏览器的回退按钮怎么办??

或者说用户在浏览页面的时候,产生了很多临时页,程序员又不想让用户通过回退(back)按钮看到之前的页面,怎么办???


可以使用 replace()方法 


window.location.replace()方法,   方法replace()会装载并显示指定的URL,当调用replace()的时候,指定的URL会替换浏览器历史列表中的当前URL,而不是在历史列表中创建一个新条目,因此,如果使用方法replace()是一个新文档覆盖当前稳定,back按钮就不能使用户返回最初文档,对那些使用了帧并且显示多个临时页(可能是由服务器端脚本生成的)网站来说,replace()比较有用,这样临时也没都不会存储在历史列表中




另:


注意,不要混淆window对象的location属性和document对象的location属性。前者引用一个location对象,后者只是一个只读字符串,并不具有location对象的任何特性,document.location与document.URL是同义的,

在大多数情况下,document.location和 location.href是相同的,但是,当存在服务器重定向时,,document.location包含的是已经装载的URL,而location.href包含的是原始请求的文档的URL




易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!