js对URL的相关操作集锦

时间:2025-03-28 12:07:43

1.location.href.....

(1)self.loction.href="/url"

window.location.href="/url"    以上两个用法相同均为在当前页面打开URL页面

(2)this.location.href="/url"    当前页面打开URL

(3) parent.location.href="/url"   在父页面打开新页面,如果页面中自定义了frame,那么可将parent self top换为自定义frame的名称,效果是在frame窗口打开url地址

(4) top.location.href="/url"   在顶层页面打开新页面

2. 关于刷新页面

 (1)window.location.href=window.location.href

 (2)window.location.Reload()

(3)window.location.replace(document.referrer)

都是刷新当前页面。区别在于是否有提交数据。当有提交数据时,window.location.Reload()会提示是否提交,window.location.href=window.location.href;则是向指定的url提交数据

3。返回

(1)window.history.go(-1)   返回上一页,go函数内的数字是正表示前进几页,是负数表示后退几页,history.length判断历史几页。此种方法不但完成页面的跳转,而且刷新页面

(2)history.back();  后退

      history.forward(); 前进   只跳转,不刷新页面

4.

(1)第一段为实际在用的

  function getURLParameter(name) {

      return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search) || [, ""])[1].replace(/\+/g, '%20')) || null; //构造一个含有目标参数的正则表达式对象

   }
  //获取url中的参数
function getUrlParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
var r = window.location.search.substr(1).match(reg); //匹配目标参数
if (r != null) return unescape(r[2]); return null; //返回参数值
}

例如像获取下面链接的邮箱

  http://agent/index.php/Home/Login/getpwd_check_email?code=824790&to=1321136493@qq.com

var mail = getURLParameter('to');

JavaScript获取当前根目录

function getRootPath_web() {

            var curWwwPath = window.document.location.href;  //获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp

            var pathName = window.document.location.pathname;  //获取主机地址之后的目录,如: uimcardprj/share/meun.jsp
var pos = curWwwPath.indexOf(pathName);   var localhostPaht = curWwwPath.substring(0, pos);  //获取主机地址,如: http://localhost:8083 var projectName = pathName.substring(0, pathName.substr(1).indexOf('/') + 1);  //获取带"/"的项目名,如:/uimcardprj
return (localhostPaht + projectName);
}

备注:

1、Location 对象详细信息参考w3school http://www.w3school.com.cn/jsref/dom_obj_location.asp