首页  >  文章  >  web前端  >  解析JQuery获取Dom元素的方法

解析JQuery获取Dom元素的方法

巴扎黑
巴扎黑原创
2017-07-24 14:23:201496浏览

(function (window) {
   var arr = [];
   var VP = function (selector, context) {
       return new VP.fn.init(selector, context);
   }
   VP.fn = VP.prototype = {
       constructor: VP,
       init: function (selector, context) {
           var _document = window.document, elem, mark = selector.charAt(0);
           if (mark == '#') {
               elem = _document.getElementById(selector.substring(1));
               if (elem) {
                   this[0] = elem;
                   this.length = 1;
               }
           }
           return this;
       },
       splice: arr.splice,
   };
   VP.extend = VP.fn.extend = function () {
       var options, name, src, copy, copyIsArray, clone,
target = arguments[0] || {},
i = 1,
length = arguments.length,
deep = false;
       if (typeof target === "boolean") {
           deep = target;
           target = arguments[i] || {};
           i++;
       }
       if (typeof target !== "object" && !VP.isFunction(target)) {
           target = {};
       }
       if (i === length) {
           target = this;
           i--;
       }
       for (; i < length; i++) {
           if ((options = arguments[i]) != null) {
               for (name in options) {
                   src = target[name];
                   copy = options[name];
                   if (target === copy) {
                       continue;
                   }
                   if (deep && copy && (VP.isPlainObject(copy) ||
                       (copyIsArray = VP.isArray(copy)))) {
                       if (copyIsArray) {
                           copyIsArray = false;
                           clone = src && VP.isArray(src) ? src : [];
                       } else {
                           clone = src && VP.isPlainObject(src) ? src : {};
                       }
                       target[name] = VP.extend(deep, clone, copy);
                   } else if (copy !== undefined) {
                       target[name] = copy;
                   }
               }
           }
       }
       return target;
   };
   VP.fn.extend({

get: function () {
           return this[0];
       },


   });
   VP.fn.init.prototype = VP.fn;
   window.VP = VP;
})(window);

以上是解析JQuery获取Dom元素的方法的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn