一、获取当前Script附带的参数
1
2
3
4
5
6
7
8
9
10 |
getScriptArgs: function () { //获取多个参数 var
scripts = document.getElementsByTagName( "script" ), script = scripts[scripts.length - 1], //因为当前dom加载时后面的script标签还未加载,所以最后一个就是当前的script src = script.src, reg = /(?:\?|&)(.*?)=(.*?)(?=&|$)/g, temp, res = {}; res[ "src" ] = src; while
((temp = reg.exec(src)) != null ) res[temp[1]] = decodeURIComponent(temp[2]); return
res; } |
二、根据名字获取Hash值
1
2
3
4
5
6
7 |
function
getQueryString(name) { var
reg = new
RegExp( "(^|&)"
+ name + "=([^&]*)(&|$)" , "i" ); var
r = window.location.hash.substr(1).match(reg); if
(r != null ) return
r[2]; return
null ; } |
三、应用实例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 |
//lastest: var
getArgs = function () { //get url querystring var
params = document.location.search, reg = /(?:^\?|&)(.*?)=(.*?)(?=&|$)/g, temp, args = {}; while
((temp = reg.exec(params)) != null ) args[temp[1]] = decodeURIComponent(temp[2]); return
args; }; //只取一个: var
queryString = function (key) { return
(document.location.search.match( new
RegExp( "(?:^\\?|&)"
+ key + "=(.*?)(?=&|$)" )) || [ ‘‘ , null ])[1]; } var
args = getArgs(); alert(args.name + " | "
+ args.sex + " | "
+ args.age); //测试链接:<a href="?name=abc&sex=男&age=12">test getQueryString</a> // JavaScript Document var
getScriptArgs = function () { //获取多个参数 var
scripts = document.getElementsByTagName( "script" ), script = scripts[scripts.length - 1], //因为当前dom加载时后面的script标签还未加载,所以最后一个就是当前的script src = script.src, reg = /(?:\?|&)(.*?)=(.*?)(?=&|$)/g, temp, res = {}; while
((temp = reg.exec(src)) != null ) res[temp[1]] = decodeURIComponent(temp[2]); return
res; }; var
args = getScriptArgs(); alert(args.a + " | "
+ args.b + " | "
+ args.c); //假如上面的js是在这个js1.js的脚本中<script type="text/javascript" src="js1.js?a=abc&b=汉字&c=123"></script> var
getScriptArg = function (key) { //获取单个参数 var
scripts = document.getElementsByTagName( "script" ), script = scripts[scripts.length - 1], src = script.src; return
(src.match( new
RegExp( "(?:\\?|&)"
+ key + "=(.*?)(?=&|$)" )) || [ ‘‘ , null ])[1]; }; alert(getScriptArg( "c" )); |
获取当前页面参数Hash和Search,或者当前Script的参数,布布扣,bubuko.com
获取当前页面参数Hash和Search,或者当前Script的参数
原文:http://www.cnblogs.com/gaojianqi/p/3611710.html