jQuery插件,其实就是通过jQuery的命名空间来调用的方法和函数。
jQuery插件分为三种:
1.通过对象来调用的插件 比如:var obj=$("#hello");obj.plg(); 通过jQuery.fun.extend()方法来拓展
2.全局的插件,在jQuery的命名下调用的,比如:jQuery.trim() 通过jQuery.extend()方法来拓展,这个方法也用来设置默认参数
3.选择器插件,拓展jQuery的选择器,比如:$(".a").color(red)选择红色的并且class为.a的元素 通过jQuery.extend()方法来拓展
javascript中的闭包:
描述:允许使用内部函数(函数的定义和函数表达式位于另一个函数体内),而且,这些内部函数可以访问它所在的
外部函数所有的局部变量、参数和声明的其他内部函数,当其中一个这样的内部函数在包含它们的外部函数之外被调用时,
就会形成闭包。比如:
function a(){
var x=1;
var b=function(){
y=x;
return y;
}
}
var c=b
而jQuery插件就是利用了闭包的特性,既可以内部临时变量影响全局空间,又可以在插件的内部访问外部空间的变量,例如jQuery,$
常见的插件形式为:
(function(){
/*这里是实现代码*/
})();
也可以是是这样
;(function($){
var foo;//局部变量
var bar=function(){
/*
匿名函数内部的函数都可以访问foo,即便在匿名函数的外部调用bar,也可以访问foo,但是在匿名函数外面
直接访问foo是做不到的
*/
$.BAR=bar;//让匿名函数的内部函数bar()逃逸到全局可访问空间,这样就可以通过jQuery.BAR()来访问内部函数bar()
}
})(jQuery);