您现在的位置: 365建站网 > 365学习 > location.assign 与 location.replace的用法区别

location.assign 与 location.replace的用法区别

文章来源:365jz.com     点击数:327    更新时间:2017-12-16 09:54   参与评论
window.location.assign(url) : 加载 URL 指定的新的 HTML 文档。 就相当于一个链接,跳转到指定的url,当前页面会转为新页面内容,可以点击后退返回上一个页面。
window.location.replace(url) : 通过加载 URL 指定的文档来替换当前文档 ,这个方法是替换当前窗口页面,前后两个页面共用一个
窗口,所以是没有后退返回上一页的

<body>

<button onclick="location.assign('http://www.baidu.com')">2222</button>

<script>
location.assign('http://www.baidu.com')
</script

</body>
assign理应跳转后会出现后退按钮的,如果点击按钮,执行js,那么的确会有后退按钮,但是如果不是通过按钮跳转,而是进入页面后就执行一段js,那么浏览器就无法后退了。其实不仅仅是location.assign,location.href 也有这样的现象。

感觉可能和浏览器把当前 state 放入 history 中的时机有关,加个 setTimeout 0 即可正常出现后退按钮。

如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛


发表评论 (327人查看0条评论)
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码: 点击我更换图片
最新评论
------分隔线----------------------------