JS獲取URL資訊類
主要功能有:
1.獲取URL基本資訊,包括:網址,協議,埠號等,
2.地址欄獲取引數,
3.將json格式的引數物件轉換成字串,
//獲取URL資訊 var shaoURL = shaoURL || {}; (function (n){ var d = { pathname:window.location.pathname, //設定或獲取物件指定的檔案名或路徑, href:window.location.href, //設定或獲取整個 URL 為字串, port:window.location.port, //設定或獲取與 URL 關聯的埠號碼, protocol:window.location.protocol.split(":")[0], //設定或獲取 URL 的協議部分, host:window.location.host, //設定或獲取 location 或 URL 的 hostname 和 port 號碼 hash:window.location.hash, //設定或獲取 href 屬性中在井號“#”后面的分段 param:window.location.search, //設定或獲取 href 屬性中跟在問號后面的部 referrer:document.referrer //獲取來源頁地址 }; n.get = function(){ var arrA = []; var arrB = []; for(var i in d){ arrA.push(i); arrB.push(d[i]); }; return { item:arrA, key:arrB }; }; n.getA = function(){ return d; }; n.getB = function(p){ return d[n.get().item[p]]; }; n.getC = function(key){ return d[key]; }; n.getD = function(key){ var reg = new RegExp("(^|&)"+ key +"=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if(r!=null)return unescape(r[2]); return null; }; n.getE = function(){ var r = window.location.hash; if(r!=null) return r.substr(1); return null; }; //json轉url字串 n.JsonToURL = function(o){ var str = ""; for(var key in o){ if(o[key]!=-1){ str += key + "=" + encodeURIComponent(o[key]) + "&"; } } str = str.substring(0,str.length-1); return str; }; //param 將要轉為URL引數字串的物件 //key URL引數字串的前綴 //encode true/false 是否進行URL編碼,默認為true //return URL引數字串 //var obj = {name:"tom","class":{className:"class1"},classMates:[{name:"shao"}]}; //JsonParam(obj); n.JsonParam = function(param, key, encode) { if(param==null) return ''; var str = ''; var t = typeof (param); if (t == 'string' || t == 'number' || t == 'boolean') { str += '&' + key + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param); } else { for (var i in param) { var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i); str += '&' + n.JsonParam(param[i], k, encode); } } return str.substr(1); }; //json轉url字串 //param 將要轉為URL引數字串的物件 //key URL引數字串的前綴 //return URL引數字串 //var obj = {name:"tom","class":{className:"class1"},classMates:[{name:"shao"}]}; //parseParam(obj); n.parseParam = function(param,key){ var str = ""; if(param instanceof String || param instanceof Number|| param instanceof Boolean){ str += "&" + key + "=" + encodeURIComponent(param); } else { /* for(var i in param){ var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i); str += '&' + parseParam(param[i], k); } */ $.each(param,function(i){ var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i); str += '&' + n.parseParam(this, k); }); }; return str.substr(1); }; })(shaoURL);
初次寫博客,希望大家多多指教,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/28129.html
標籤:JavaScript
上一篇:JS的時間格式化和時間戳轉換函式
