JavaScript中关于页面URL地址的获取

时间:2021-06-02 21:47:31
 1     window.location.host; //返回url的主机部分,例如 www.xxx.com
window.location.hostname; //返回url的主机名,例如 www.xxx.com
window.location.href; //返回整个url字符串(在浏览器中就是完整的地址栏),例如 www.xxx.com/index.php?class_id=3&id=2
window.location.pathname; //返回url的路径部分,例如 /a/index.html
window.location.protocol; //返回url的协议部分,例如 http:,ftp:,maito: 等等
window.location.port; //返回url的端口部分,如果采用默认的80端口,那么返回值并不是默认的80而是空字符 //取当前页面名称(不带后缀名):文件名
function getPageName(){
var strUrl = location.href;
var arrUrl = strUrl.split("/");
var arr = arrUrl.slice(arrUrl.length-1, arrUrl.length).toString(String).split(".");
return arr.slice(0, 1);//slice() 方法可从已有的数组中返回选定的元素。
} //获取取当前页面名称(带后缀名)
function getAllPageName(){
var strUrl = location.href;
var arrUrl = strUrl.split("/");
var strPage = arrUrl[arrUrl.length-1];//数组的最后一个元素
return strPage;
} //返回的是字符串形式的参数,例如:class_id=3&id=2&
function getUrlArgStr(){
var q=location.search.substr(1);
var qs=q.split('&');
var argStr='';
if(qs){
for(var i=0;i<qs.length;i++){
argStr+=qs[i].substring(0,qs[i].indexOf('='))+'='+qs[i].substring(qs[i].indexOf('=')+1)+'&';
}
}
return argStr;
} //返回的是对象形式的参数
function getUrlArgObject(){
var args=new Object();
var query=location.search.substring(1);//获取查询串
var pairs=query.split(",");//在逗号处断开
for(var i=0;i<pairs.length;i++){
var pos=pairs[i].indexOf('=');//查找name=value
if(pos==-1){//如果没有找到就跳过
continue;
}
var argname=pairs[i].substring(0,pos);//提取name
var value=pairs[i].substring(pos+1);//提取value
args[argname]=unescape(value);//存为属性
}
return args;//返回对象
}

window.location.href 与 this.location.href,location.href,self.location.href都是本页面跳转

parent.location.href是上一层页面跳转

top.location.href是最外层的页面跳转