jquery方法扩展获取url参数

//  获取当前页面 url 参数。
    //  返回值:该方法返回一个数组,数组中的每个元素都是一个 JSON 对象,该 JSON 对象包含如下属性:
    //      name:   表示 url 参数的名称;
    //      value:  表示 url 参数的值;
    //  也可以通过数组访问器快速访问某个特定名称的参数值,方法如:coreUtil.getRequest()["id"]。

(function (window, $, undefined) {
//  定义 通用工具方法 扩展对象基元
coreUtil = function () { return Object.apply(this, arguments); },
coreUtil.fn = coreUtil.prototype = {};
//  定义 jQuery 扩展对象基元
coreJquery = function () { return $.apply(this, arguments); },
coreJquery.fn = coreJquery.prototype = {};
coreJquery.util = coreUtil;

    var document = coreUtil.document = window.document,
        location = coreUtil.location = window.location,
        docElem = coreUtil.docElem = document.documentElement,
        history = coreUtil.history = window.history,
        parent = coreUtil.parent = window.parent,
        top = coreUtil.top = window.top,
        $$ = coreJquery.emptyJquery = coreJquery.empty$ = coreJquery.$$ = coreUtil.emptyJquery = coreUtil.empty$ = coreUtil.$$ = $(),
        core_string = version,
        //core_date = coreNullable.Date,
        //core_number = coreNullable.Number,
        core_array = coreNullable.Array,
        //core_boolean = coreNullable.Boolean,
        //core_trim = core_string.trim,
        core_push = core_array.push,
        core_slice = core_array.slice,
        core_splice = core_array.splice,
        //core_sort = core_array.sort,
        //core_join = core_array.join,
        core_isArray = Array.isArray;


    //  定义版本
    coreUtil.version = version;

    //  获取指定对象的类型。
    coreUtil.type = $.type;

    //  测试对象是否是窗口(有可能是Frame)。
    coreUtil.isWindow = $.isWindow;

    //  测试对象是否是布尔(Boolean)类型值。
    coreUtil.isBoolean = function (obj) { return coreUtil.type(obj) == "boolean"; };

    //  测试对象是否是字符串(String)类型值。
    coreUtil.isString = function (obj) { return coreUtil.type(obj) == "string"; };

    //  测试对象是否是日期(Date)类型值。
    coreUtil.isDate = function (obj) { return coreUtil.type(obj) == "date"; };

    //  测试对象是否是正则表达式(RegExp)。
    coreUtil.isRegExp = function (obj) { return coreUtil.type(obj) == "regexp"; };

    //  测试传入的参数是否是一个 javscript 对象;
    coreUtil.isObject = function (obj) { return coreUtil.type(obj) == "object"; };

    //  测试对象是否是数组(Array)。
    coreUtil.isArray = $.isArray;

    //  测试对象是否是函数。
    //  注意:在IE浏览器里,浏览器提供的函数比如'alert'还有 DOM 元素的方法比如 'getAttribute' 将不认为是函数。
    coreUtil.isFunction = $.isFunction;

    //  测试对象是否是数值或数值格式的字符串。
    //  方法检查它的参数是否代表一个数值。如果是这样,它返回 true。否则,它返回false。该参数可以是任何类型的。
    coreUtil.isNumeric = coreUtil.likeNumber = coreUtil.likeNumeric = $.isNumeric;

    //  判断对象是否是数值类型;
    coreUtil.isNumber = function (obj) { return coreUtil.type(obj) == "number"; };

    //  测试对象是否是空对象(不包含任何属性)。
    //  这个方法既检测对象本身的属性,也检测从原型继承的属性(因此没有使用hasOwnProperty)。
    coreUtil.isEmptyObject = $.isEmptyObject;

    //  测试对象是否为空(不包含任何属性的空对象、null、undefined、空字符串、全空格)。
    //  这个方法既检测对象本身的属性,也检测从原型继承的属性(因此没有使用hasOwnProperty)。
    coreUtil.isEmptyObjectOrNull = function (obj) {
        switch (coreUtil.type(obj)) {
            case "string":
                return coreString.isNullOrWhiteSpace(obj);
            case "array":
                return obj.length == 0;
            case "date":
                return Date.parse(obj) == 0;
            case "object":
                return coreUtil.isEmptyObject(obj);
        }
        return obj == null || obj == undefined;
    };

    //  测试对象是否是纯粹的对象(通过 "{}" 或者 "new Object" 创建的)。
    coreUtil.isPlainObject = $.isPlainObject;

    //  判断对象是否为 "未定义" 值(即 undefined)。
    coreUtil.isUndefined = function (obj) { return obj === undefined || typeof obj === "undefined"; };

    //  判断对象是否为空(Null)值。
    coreUtil.isNull = function (obj) { return obj === null; };

    //  判断对象是否为 "未定义" 值(即 undefined)或空(Null)值。
    coreUtil.isNullOrUndefined = function (obj) { return coreUtil.isUndefined(obj) || coreUtil.isNull(obj); };

    //  测试对象不为 "未定义" 值(即 undefined)、空(Null)值、Boolean-False值、空字符串值或数字0中的任何一种。
    coreUtil.isPositive = function (obj) { return obj ? true : false; };

    //  判断对象是否为 "未定义" 值(即 undefined)、空(Null)值、Boolean-False值、空字符串值或数字0中的一种。
    coreUtil.isNegative = function (obj) { return obj ? false : true; };

    //  测试对象是否是 jQuery 对象。
    coreUtil.isJqueryObject = function (obj) { return obj != null && obj != undefined && ((obj.jquery ? true : false) || obj.constructor === $$.constructor); };

    //  判断对象是否是一个空的 jQuery 对象(不包含任何 DOM 元素,即 length = 0)。
    coreUtil.isEmptyJquery = coreUtil.isEmptyJqueryObject = function (obj) { return coreUtil.isJqueryObject(obj) && !obj.length; };

    //  定义一个空函数
    coreUtil.noop = coreUtil.isFunction($.noop) ? $.noop : function () { };

    //  判断传入的字符串是否为Null或者为空字符串或者全是空格。
    coreUtil.trim = $.trim;

    //  将一个 DOM 对象或者表达式解析为 jQuery 对象;
    //  如果该对象本身就已经是一个 jQuery 对象,则直接将其返回。
    coreUtil.parseJqueryObject = coreUtil.parseJquery = function (obj) { return coreUtil.isJqueryObject(obj) ? obj : $(obj); };

    //  检测一个对象是否为一个数组对象或者类似于数组对(具有数组的访问方式:具有 length 属性、且具有属性名为数字的索引访问器)
    //  注意:此方法传入 字符串 时执行,也会返回 true,因为 字符串 是一个字符数组。
    coreUtil.likeArray = function (obj) {
        if (obj == null || obj == undefined || coreUtil.isWindow(obj)) {
            return false;
        }
        if (obj.nodeType === 1 && obj.length) {
            return true;
        }
        var type = coreUtil.type(obj);
        return type === "array" || type !== "function" && coreUtil.isNumeric(obj.length) && obj.length >= 0;
    };

    //  检测一个对象是否为一个数组对象或者类似于数组对(具有数组的访问方式:具有 length 属性、且具有属性名为数字的索引访问器)且不是字符串
    coreUtil.likeArrayNotString = function (obj) {
        return coreUtil.likeArray(obj) && !coreUtil.isString(obj);
    };


  coreUtil.getRequest = function () {
        var search = location.search;
        if (search.substr(0, 1) == "?") { search = search.substr(1, search.length - 1); }
        var result = [];
        if (search.length > 0) {
            var params = search.split("&");
            for (var i = 0; i < params.length; i++) {
                var param = params[i];
                var pos = param.indexOf("=");
                var name = param.substring(0, pos);
                var value = param.substr(pos + 1);
                result.push({ name: name, value: value });
                result[name] = value;
            }
        }
        return result;
    };
    coreUtil.request = coreUtil.getRequest();

})(window, jQuery);

具体使用

 var url = "InstallApplyForm.html?s=" + Math.random();
                $Core.UI.openDialog("redwind", url + "&installApplyId=" + value +"&type=red",
                    {
                        title: "查看【安装申请】",
                        width: '80%',
                        height: '90%',
                        onClose: function () {
                        }
                    });
key = $.util.request["installApplyId"];

猜你喜欢

转载自blog.csdn.net/qq_35029061/article/details/83109161