jQuery插件开发的两种方法
jQuery添加插件主要有2种方法:
一、jquery.fn.extend(object) 为jQuery对象添加方法
jquery.fn 实际上就是jquery.prototype,如果从这个角度来看话,应该可以理解 jquery.fn.extend(object)实际上是对jquery.prototype进行扩展,就是为jQuery类添加“成员函数”,jquery实例对象可以直接使用该方法。这种方式添加的方法可以通过jquery实例进行调用,如:$(“.className”).foo();
二、jquery.extend(object) 为扩展jQuery本身添加方法,可以理解为给jquery类添加“静态方法”,通过这种方式添加的方法采用这种方式进行调用,$.foo();
另外,结合命名空间和闭包(自执行匿名函数)特性还可以进行扩展,为插件添加一些公有或私有的方法和属性,如
(function($){
//定义私有方法
function foo(){
//foo function
}
//以下定义的为jQuery全局方法,调用方式为 $.foo();
$.extend({
foo : function(){
//foo function
}
});
//以下方法调用方式为 $().myPlug.foo();
$.fn.extned({
myPlug : {
foo : function(){
//foo function
},
doo : function(){
// doo function
}
}
});
}){jQuery};
引用资料:
http://learn.jquery.com/plugins/
http://www.iteye.com/topic/545971