首页 > 语言 > JavaScript > 正文

JS实现页面跳转与刷新的方法汇总

2024-05-06 15:35:16
字体:
来源:转载
供稿:网友

window.location(.href)="URL"

其实 .href 可以省略

window.location window.location.href 实现的效果是一样的

例如:

window.location = "http://www.baidu.com"window.location.href = http://www.baidu.com

上面两种方法都可以从当前页面跳转到目标页面

不同之处在于 window.location 返回的是对象,如果没有.href,它会默认参数就是href

winodw.location.assign("URL")

这个方法和上面的方法差不多

用法:

winodw.location.assign(http://www.baidu.com)

window.location.replace("URL")

如果用window.location.replace("http://www.baidu.com") 实现跳转页面, 它和上面方法的区别在于它跳转后不会保存跳出页面的信息.

所以如果使用 history 历史返回按钮是无效的

它的效果类似于在网页上点击右键, 在新窗口打开或新标签页打开.

window.location.href 实现的效果是在页面上点击目标链接, 然后可以点击历史返回按钮, 返回到之前页面。

历史页跳转

下面的两种方法都可以实现返回历史页,相当于点了页面左上角的返回按钮

window.history.back();window.history.go(-1);

back和go里面都可以放数值

例如:里面放上 -1 意思就是返回上一级,里面放上 -2 就是返回上上级,以此类推
而且里面还可以放上指定的路由路径,比如 window.history.go('../routes/admin/'); 这样可以跳转到指定的路由模块

meta refresh

如果用户浏览器禁用了javascript, 那么可以用meta refresh来实现自动跳转:

<noscript>	<meta http-equiv="refresh" content="0;URL=http://www.baidu.com/"></noscript>

如果要实现 JS 自动跳转,可以加个定时器:

setTimeout(function(){ ... }, 1000);

重新加载本页

如果你的代码逻辑执行完了,想要重新加载页面的话,可以用这两种方法:

window.location.reload()window.location.replace()

这两种方法都可以重新加载本页,但是replace()可以导向另外一个URL

例如:window.location.replace("http://www.baidu.com")

window.navigate('URL')

window.navigate('URL') 这个方法是只针对IE的,不适用于火狐等其他浏览器,在HTML DOM Window Object中,根本没有列出window.navigate这个方法,所以这个方法尽量少用,遗忘最好。

self、parent、this、top

top.location.href=”url”   在顶层页面打开url(跳出框架) self.location.href=”url”  仅在本页面打开url地址 parent.location.href=”url”  在父窗口打开Url地址 this.location.href=”url”  用法和self的用法一致            
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选