版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/BrightLD/article/details/84589500
(function () {
var jQuery = function (selector, context) {
return new jQuery.fn.init(selector, context);
};
jQuery.fn = jQuery.prototype = {
constructor: jQuery,
init:function....
};
window.jQuery = window.$ = jQuery;
})();
JQ中提供的方法有两部分
-
在原型上面定义方法,供JQ的实例使用(JQ实例一般都是用选择器获取到的元素集合)
-
把JQ当做普通的对象,定义的私有属性和方法(这些方法一般都是项目中的一些工具包或者常用的方法如$.ajax())
JQ已经提供很多的方法了,但是也不能说就足够全了,所以为了后期开发者可以增加一些自己的方法,JQ提供了EXTEND方法,帮助开发者在JQ的原型或者对象上增加属于自己的方法
-
jQuery.extend({AA:function...})在JQ的对象上增加方法$.AA(),这样做一般都是增加更多的公用方法
-
jQuery.fn.extend({BB:function...}):在JQ的原型上扩展方法$().BB(),这样做一般是给元素用的,我们也基于这个扩展JQ插件