博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
获取地址栏参数
阅读量:4655 次
发布时间:2019-06-09

本文共 9464 字,大约阅读时间需要 31 分钟。

获取地址栏参数:

jquery.query-2.1.7.js

/*** jQuery.query - Query String Modification and Creation for jQuery* Written by Blair Mitchelmore (blair DOT mitchelmore AT gmail DOT com)* Licensed under the WTFPL (http://sam.zoy.org/wtfpl/).* Date: 2009/8/13** @author Blair Mitchelmore* @version 2.1.7***/new function (settings) {    // Various Settings    var $separator = settings.separator || '&';    var $spaces = settings.spaces === false ? false : true;    var $suffix = settings.suffix === false ? '' : '[]';    var $prefix = settings.prefix === false ? false : true;    var $hash = $prefix ? settings.hash === true ? "#" : "?" : "";    var $numbers = settings.numbers === false ? false : true;    jQuery.query = new function () {        var is = function (o, t) {            return o != undefined && o !== null && (!!t ? o.constructor == t : true);        };        var parse = function (path) {            var m, rx = /\[([^[]*)\]/g, match = /^([^[]+)(\[.*\])?$/.exec(path), base = match[1], tokens = [];            while (m = rx.exec(match[2])) tokens.push(m[1]);            return [base, tokens];        };        var set = function (target, tokens, value) {            var o, token = tokens.shift();            if (typeof target != 'object') target = null;            if (token === "") {                if (!target) target = [];                if (is(target, Array)) {                    target.push(tokens.length == 0 ? value : set(null, tokens.slice(0), value));                } else if (is(target, Object)) {                    var i = 0;                    while (target[i++] != null);                    target[--i] = tokens.length == 0 ? value : set(target[i], tokens.slice(0), value);                } else {                    target = [];                    target.push(tokens.length == 0 ? value : set(null, tokens.slice(0), value));                }            } else if (token && token.match(/^\s*[0-9]+\s*$/)) {                var index = parseInt(token, 10);                if (!target) target = [];                target[index] = tokens.length == 0 ? value : set(target[index], tokens.slice(0), value);            } else if (token) {                var index = token.replace(/^\s*|\s*$/g, "");                if (!target) target = {};                if (is(target, Array)) {                    var temp = {};                    for (var i = 0; i < target.length; ++i) {                        temp[i] = target[i];                    }                    target = temp;                }                target[index] = tokens.length == 0 ? value : set(target[index], tokens.slice(0), value);            } else {                return value;            }            return target;        };        var queryObject = function (a) {            var self = this;            self.keys = {};            if (a.queryObject) {                jQuery.each(a.get(), function (key, val) {                    self.SET(key, val);                });            } else {                jQuery.each(arguments, function () {                    var q = "" + this;                    q = q.replace(/^[?#]/, ''); // remove any leading ? || #                    q = q.replace(/[;&]$/, ''); // remove any trailing & || ;                    if ($spaces) q = q.replace(/[+]/g, ' '); // replace +'s with spaces                    jQuery.each(q.split(/[&;]/), function () {                        var key = decodeURIComponent(this.split('=')[0] || "");                        var val = decodeURIComponent(this.split('=')[1] || "");                        if (!key) return;                        if ($numbers) {                            if (/^[+-]?[0-9]+\.[0-9]*$/.test(val)) // simple float regex                                val = parseFloat(val);                            else if (/^[+-]?[0-9]+$/.test(val)) // simple int regex                                val = parseInt(val, 10);                        }                        val = (!val && val !== 0) ? true : val;                        if (val !== false && val !== true && typeof val != 'number')                            val = val;                        self.SET(key, val);                    });                });            }            return self;        };        queryObject.prototype = {            queryObject: true,            has: function (key, type) {                var value = this.get(key);                return is(value, type);            },            GET: function (key) {                if (!is(key)) return this.keys;                var parsed = parse(key), base = parsed[0], tokens = parsed[1];                var target = this.keys[base];                while (target != null && tokens.length != 0) {                    target = target[tokens.shift()];                }                return typeof target == 'number' ? target : target || "";            },            get: function (key) {                var target = this.GET(key);                if (is(target, Object))                    return jQuery.extend(true, {}, target);                else if (is(target, Array))                    return target.slice(0);                return target;            },            SET: function (key, val) {                var value = !is(val) ? null : val;                var parsed = parse(key), base = parsed[0], tokens = parsed[1];                var target = this.keys[base];                this.keys[base] = set(target, tokens.slice(0), value);                return this;            },            set: function (key, val) {                return this.copy().SET(key, val);            },            REMOVE: function (key) {                return this.SET(key, null).COMPACT();            },            remove: function (key) {                return this.copy().REMOVE(key);            },            EMPTY: function () {                var self = this;                jQuery.each(self.keys, function (key, value) {                    delete self.keys[key];                });                return self;            },            load: function (url) {                var hash = url.replace(/^.*?[#](.+?)(?:\?.+)?$/, "$1");                var search = url.replace(/^.*?[?](.+?)(?:#.+)?$/, "$1");                return new queryObject(url.length == search.length ? '' : search, url.length == hash.length ? '' : hash);            },            empty: function () {                return this.copy().EMPTY();            },            copy: function () {                return new queryObject(this);            },            COMPACT: function () {                function build(orig) {                    var obj = typeof orig == "object" ? is(orig, Array) ? [] : {} : orig;                    if (typeof orig == 'object') {                        function add(o, key, value) {                            if (is(o, Array))                                o.push(value);                            else                                o[key] = value;                        }                        jQuery.each(orig, function (key, value) {                            if (!is(value)) return true;                            add(obj, key, build(value));                        });                    }                    return obj;                }                this.keys = build(this.keys);                return this;            },            compact: function () {                return this.copy().COMPACT();            },            toString: function () {                var i = 0, queryString = [], chunks = [], self = this;                var encode = function (str) {                    str = str + "";                    if ($spaces) str = str.replace(/ /g, "+");                    return encodeURIComponent(str);                };                var addFields = function (arr, key, value) {                    if (!is(value) || value === false) return;                    var o = [encode(key)];                    if (value !== true) {                        o.push("=");                        o.push(encode(value));                    }                    arr.push(o.join(""));                };                var build = function (obj, base) {                    var newKey = function (key) {                        return !base || base == "" ? [key].join("") : [base, "[", key, "]"].join("");                    };                    jQuery.each(obj, function (key, value) {                        if (typeof value == 'object')                            build(value, newKey(key));                        else                            addFields(chunks, newKey(key), value);                    });                };                build(this.keys);                if (chunks.length > 0) queryString.push($hash);                queryString.push(chunks.join($separator));                return queryString.join("");            }        };        return new queryObject(location.search, location.hash);    };} (jQuery.query || {}); // Pass in jQuery.query as settings objectWindow size: 1920 x 1040Viewport size: 1920 x 872
View Code

 

页面引用:

<script src="" type="text/javascript"></script>

 

<script src="" type="text/javascript"></script>

var panel = $.query.get("p");  //获得地址栏参数 如 &id=1

var panelid = $.query.get("id");
if (panel != "") {
$(".Vxxleftnav a").removeClass("cur");
$(".Vxxleftnav a").eq(panel).addClass("cur");
}

if (panelid!= "") {

$(".Vxxleftnav a").removeClass("on");
$(".Vxxleftnav a").eq(panelid).addClass("on");
}

转载于:https://www.cnblogs.com/aimyfly/p/3213997.html

你可能感兴趣的文章
Shell 07 项目案例
查看>>
Dapper基础用法
查看>>
一步步学习SPD2010--第九章节--使用可重用工作流和工作流表单(1)--创建和使用可重用工作流...
查看>>
Eclipse配置默认的编码集为utf-8
查看>>
【精解】EOS标准货币体系与源码实现分析
查看>>
HashMap
查看>>
Android广播机制概述
查看>>
[javascript]9宫格拖拽拼图游戏 puzzle
查看>>
Entity Framework底层操作封装(3)
查看>>
InputStream 转换 InputStreamReader再转换BufferedReader
查看>>
在线程池中的使用spring aop事务增强
查看>>
继续深入了解Cookie 和 Session
查看>>
再看《操作系统》--处理机管理
查看>>
亚马逊的负载均衡(Amazon Load Balancing)
查看>>
Java学习之Comparable与Comparator的区别
查看>>
ASP:Checkbox验证非空的一种方法
查看>>
[CQOI2013]新Nim游戏 线性基
查看>>
我的成就故事
查看>>
VB6.0 API 累计
查看>>
第十周学习进度博客
查看>>