js修改url

更新日期: 2021-10-14 阅读: 3.9k 标签: url

这篇文章主要介绍修改url地址的一些方法,包括:修改url重新加载,修改url但不重新加载。


修改url重新加载刷新页面

1、window.location.reload(),刷新页面,不重复提交页面。

2、window.location.href=window.location.href,刷新页面,不重复提交页面。

3、location.replace(location.href),刷新页面,不重复提交页面。

4、window.location.replace(location),重定向一个页面,也可以为当前页面。

5、window.opener.location.reload(); 父页面刷新加载,即当一个页面open一个新页面后可以在子页面,reload父页面。

6、其他一些非常用的刷新方法:

history.go(0)
location=location
document.execCommand('Refresh')
window.navigate(location)
document.URL=location.href

7、html中meta标签

页面自动刷新:把如下代码加入区域中,其中20指每隔20秒刷新一次页面

<meta http-equiv="refresh" content="20">

页面自动跳转:把如下代码加入区域中,其中20指隔20秒后跳转到 http://www.fly63.com  页面

<meta http-equiv="refresh" content="20;url="http://www.fly63.com">

场景:使用js修改url地址参数并刷新页面

该方法可以修改url的参数。例如将www.fly63.com修改为www.fly63.com?name=123。代码如下:

function changeURLArg(url,arg,arg_val){
var pattern=arg+'=([^&]*)';
var replaceText=arg+'='+arg_val;
if(url.match(pattern)){
var tmp='/('+ arg+'=)([^&]*)/gi';
tmp=url.replace(eval(tmp),replaceText);
return tmp;
}else{
if(url.match('[\?]')){
return url+'&'+replaceText;
}else{
return url+'?'+replaceText;
}
}
}

使用:

window.location.href = changeURLArg(window.location.href,'name',123)


修改url但不重新加载

如果修改url但不重新加载,可以使用html5后引入的History.pushState(),History.replaceState()。pushState方法往历史记录中添加新记录,replaceState方法修改当前历史记录。

使用到的api

history.state

当前URL下对应的状态信息。如果当前URL不是通过pushState或者replaceState产生的,那么history.state是null。

history.pushState(state, title, url)

将当前URL和history.state加入到history中,并用新的state和URL替换当前。不会造成页面刷新。

  • state:与要跳转到的URL对应的状态信息。
  • title: 新页面的标题,但是所有浏览器目前都忽略这个值,因此这里可以填null或者空字符串 。
  • url:要跳转到的URL地址,不能跨域。
history.replaceState

参数同pushState,区别于pushState会直接替换掉当前url,而不会在history中留下记录。

例子:

//如果当前url为http://www.fly63.com/nav
history.replaceState({},"","/tool");
//现在为http://www.fly63.com/tool

场景:使用js修改url地址参数不刷新页面

同样使用上述方法changeURLArg。

var newurl=changeURLArg(window.location.href,'name',123)
window.history.replaceState({path: newurl}, '', newurl);


本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://fly63.com/article/detial/10734

相关推荐

短网址(short URL)的实现_如何生成短链接URL?

什么是短链接 ?就是把普通网址,转换成比较短的网址。好处不言而喻:短、字符少、美观、便于发布、传播。所以如何来优雅的生成足够短的字符串唯一ID呢?

qs.js_更好的处理url参数

一次接触qs这个库,是在使用axios时,用于给post方法编码,在使用过程中,接触到了一些不同的用法,写在这里分享一下:qs.parse、qs.stringify、排序、指定数组编码格式、处理json格式的参数

window.URL对象的使用方式

window对象的URL对象是专门用来将blob或者file读取成一个url的。这个url可以用在html的任何可以使用url的地方,比如img的src ; audio/video的src和source标签等。

URL中%2F,%2B等特殊字符

有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了。 编码的格式为:%加字符的ASCII码,即一个百分号%,后面跟对应字符的ASCII(16进制)码值。

html 获取url地址_js获取当前页面的url网址信息汇总

在WEB开发中,时常会用到javascript来获取当前页面的url网址信息,在这里是我的一些获取url信息的小总结。window.location.href(设置或获取整个 URL 为字符串),window.location.protocol(设置或获取 URL 的协议部分)

短网址(short URL)系统的原理及其实现

做一个短链接生成器,可以将一个长链接缩短成一个短链接。就是把普通网址,转换成比较短的网址。好处不言而喻。短、字符少、美观、便于发布、传播。

URL的组成和含义

当您点击 HTML 页面中的某个链接时,对应的 <a>标签指向万维网上的一个地址。 统一资源定位器(URL)用于定位万维网上的文档(或其他数据)。

什么是网址?

网址通常指因特网上网页的地址。企事业单位或个人通过技术处理,将一些信息以逐页的方式储存在因特网上,每一页都有一个相应的地址,以便其他用户访询而获取信息资料,这样的地址叫做网址。

JS获取URL中参数值的4种方法

我们在做页面跳传参的时候有时候需要处理传过来的参数进行匹配数据(一般用于详情页),一开始我想的是通过split进行分割获取,但是在实际开发过程中觉得有点单一

静态网站如何获取Get参数,通过js获取url的参数数据的实现方式

不使用动态语言php,java等,直接通过js获取链接中传递的get数据的方法总结。javascript可以获取当前页面的url 只要对获取下来的url进行简单地解析即可。

点击更多...

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