/
jquery.QString.js
58 lines (45 loc) · 1.31 KB
/
jquery.QString.js
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
/*
* jQuery QueryString Plugin
* Author: Ryan Schwartz
* Version: 1.0.5 (16-OCT-2014)
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl-3.0-standalone.html
*/
// Initiate the QueryString handler
$(function() {
QueryString();
});
(function($){
// Declare function
QueryString = function(){
};
// Declare sub-function for getting a specific query string
QueryString.get = function(q){
s = window.location.search;
s = s.replace(/\+/g, ' ');
var re = new RegExp("(\\?|&){1}"+q+"=([^&#]*)",'i');
var val = re.exec(s);
val = (val) ? val[2] : "";
return val;
}
// Declare sub-function for getting a specific hash
QueryString.getHash = function(){
var hash = window.location.hash;
hash = hash.substring(1); // remove the #
return hash;
}
// Declare sub-function for getting an object of all query strings
QueryString.get_all = function(){
var url = location.href;
var result = {}
if(url.indexOf('?') >= 0){
var qs = url.substring(url.indexOf('?') + 1).split('&');
for(var i = 0; i < qs.length; i++){
qs[i] = qs[i].split('=');
result[qs[i][0]] = decodeURIComponent(qs[i][1]);
}
}
return result;
}
})(jQuery);