window.location.href和window.location.replace的区别

本文深入探讨了HTML中`window.location.replace()`与`window.history.go(-1)`的区别,解释了它们在页面跳转和浏览器历史操作上的不同行为。重点展示了这两种方法在实现页面间跳转及返回时的差异,特别是当页面包含“返回”按钮时的表现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有3个html页面(1.html, 2.html, 3.html)。

进系统默认的是1.html ,当我进入2.html的时候, 
2.html里面用window.location.replace("3.html");与用window.location.href("3.html");
从用户界面来看是没有什么区别的, 但是当3.html页面有一个“返回”按钮,调用window.history.go(
-1);wondow.history.back();
方法的时候,一点这个返回按钮就要返回2.html页面的话,区别就出来了, 当用window.location.replace(
"3.html");连到3.html页面的话, 3.html页面中的调用window.history.go(-1);wondow.history.back();方法是不好用的,会返回到1.html 。 当用window.location.href("3.html");连到3.html页面的话, 3.html页面中的调用window.history.go(-1);wondow.history.back();方法是好用的,会返回2.html。 因为window.location.replace("3.html");是不向服务器发送请求的跳转, 而window.history.go(-1);wondow.history.back();方法是根据服务器记录的请求决定该跳到哪个页面的, 所以会跳到系统默认页面1.html 。window.location.href("3.html");是向服务器发送请求的跳转,window.history.go(-1);wondow.history.back();方法是根据服务器记录的请求决定该跳到哪个页面的, 所以就可以返回到2.html。

 

转载于:https://www.cnblogs.com/qhorse/p/4898268.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值