jQuery的插件主要分为3种类型:
1.封装对象方法的插件
2.封装全局函数的插件
3.选择器插件
注:
- jQuery插件的文件名推荐命名为jquery.[插件名].js,以免和其他javascript库插件混淆。
- 所有的对象方法都应当附加到jQuery.fn对象上,而所有的全局函数都应当附加到jQuery对象本身上。
- 在插件内部,this指向的是当前通过选择器获取的jQuery对象,而不是指DOM元素。
插件中的闭包:
常见的jQuery插件都是以下这种形式的
(function(){
/*这里放置代码*/
})();
首先定义一个匿名函数function(){/*这里放置代码*/},然后用括号括起来,变成(function(){/*这里放置代码*/})这种形式,最后通过()这个运算符来执行。可以传递参数进去,以供内部函数使用。
(function($){ //此处将$作为匿名函数的形参
/*这里放置代码,可以使用$作为jQuery的缩写别名*/
})(jQuery); //这里就将jQuery作为实参传递给匿名函数了
举两个例子:
(function($){
$.fn.extend({
"color":function(value){
return this.css("color",value);
}
});
})(jQuery);
(function($){
$.extend({
ltrim:function(text){
return (text||"").replace(/^\s+/g,"");
},
rtrim:function( text ){
return (text||"").replace(/\s+$/g,"");
}
});
})(jQuery);