封装一个可以获取浏览器url参数的方法

2019-12-18  本文已影响0人  逸笛

举个栗子:
http://www.baidu.com:80/fisker/post/0703/window.location.html?ver=1.0&id=6#imhere

知识点:
window.location.href-----------整个URl字符串(在浏览器中就是完整的地址栏)
本例返回值: http://www.baidu.com:80/fisker/post/0703/window.location.html?ver=1.0&id=6#imhere

window.location.protocol---------URL 的协议部分
本例返回值:http:

window.location.host----------URL 的主机部分
本例返回值:www.baidu.com

window.location.port-----URL 的端口部分
如果采用默认的80端口(update:即使添加了:80),那么返回值并不是默认的80而是空字符
本例返回值:""

window.location.pathname(URL 的路径部分(就是文件地址))
本例返回值:/fisker/post/0703/window.location.html

window.location.search-------查询(参数)部分
除了给动态语言赋值以外,我们同样可以给静态页面,并使用javascript来获得相信应的参数值
本例返回值:?ver=1.0&id=6

window.location.hash-------锚点
本例返回值:#imhere

方法:

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://caibaojian.com/?p=177.html的p值
getUrlParam('p'); //输出177
上一篇下一篇

猜你喜欢

热点阅读