js页面跳转另一页的方法——location.href和location.replace用法和区别

更新日期: 2018-03-29阅读: 6.2k标签: 跳转

除了通过a标签实现跳转外,js的location对象提供了2个方法可以实现跳转到另一个页面,如下:

window.location.href = "http://www.fly63.com"; 
window.location.replace(" http://www.fly63.com  ");

通常在使用中,上面两种并没有多少差别,但是在做回退操作的时候就能发现区别了。document.location.replace跳转后,浏览器不可以通过“后退”退回到原页面,使用js方法返回也不行,如:window.location.go(-1)。关于document.location.href跳转还发现一个细节:


用个例子来说明:
假设有a,b,c三个页面,a跳转到c,中间有个b页面,其中b页面中脚本执行了一句:

document.location.href="/c.htm";

所以用户看不到b页面直接跳转到了c页面。但是浏览器记录却记录了三个页面:a, b, c。

这个时候点击返回按钮从c就是返回到b,而b又会马上跳转到c,所以就出现了点击返回按钮,页面刷新后,还是停留在原来页面c的情况。这意味着用户返回会陷入无限地跳转回退的循环之中 。解决方案就是b页面的脚本换成下面这句: 

window.location.replace("c.html");


说明:

1、window.location.href方式用于跳转到指定页面地址,location.replace将目前浏览器的地址替换掉,调用这个方法的网页,将不会被写入浏览记录。

2、当出现上述中间页跳转的情况下,使用window.location.replace比window.location.href更好,因为replace()并不保存原页面在访问历史中,这意味着用户不会陷入无限的跳转回退的循环中。  


链接: https://www.fly63.com/article/detial/567

浅谈网站无刷新更新技术,基于hash路由的实现。

现在为了提高网站的用户体验,如添加页面切换动画,减少页面加载,很多网站为此都采用了无刷新技术来加载页面内容。

js刷新当前页面,js实现页面自动刷新、跳转的方法总汇

Javascript刷新当前页面:history.go(0)、location.reload()、location=location、location.assign(location)、document.execCommand(Refresh)、location.replace(location)等,Javascript页面自动刷新、跳转,如每隔多少秒刷新一次页面.

微信小程序路由跳转

wx.switchTab(Object object)这里的tabBar是底下的导航栏指定的页面,跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面;wx.reLaunch(Object object)基础库 1.1.0 开始支持,低版本需做兼容处理。

vue路由使用router.push进行路由跳转

route-link是在html中静态定义的,也可以在代码中动态跳转:注意绝对不能写href=,这样执行click跳转后,又会执行href跳转到当前页面push也可以直接使用path:

angular怎么做前端页面跳转?

Angular中每个页面的显示都需要三个要素:页面的代码,控制器和页面的URL;当要在同一个页面上呈现不同的视图时,这就需要配置路由啦;angular.js已经为我们封装了一个独立的路由工具ng-route;ng-route是靠URL来改变显示的视图的

移动端 location.href 无法成功跳转页面

最近做的移动端页面在请求成功后要跳转页面,通过location.href实现的跳转。但同事在测试时,安卓机可以成功跳转,苹果IOS确无法成功跳转。

javascript如何实现页面跳转?

在JavaScript中有好几种方法可以实现页面跳转,重定向到另一个网页,下面本篇文章就来给大家介绍一些使用JavaScript实现页面跳转的方法,希望对大家有所帮助。

vue利用全局导航守卫作登录后跳转到未登录前指定页面

想进入userManage页面,但是由于没有登录,系统是不会让你进入这个页面,之后会被定向到login页面。但是在登录之后,认为你有这个权限了,就需要重新定向到userManage页面

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!