jQuery的插件接口目的是为jQuery扩展方法,将扩展的功能从jQuery的主题框架中剥离开来。
jQuery的插件开发包括两类:
1. 挂在jQuery下的静态方法
2. 挂在jQuery原型上的实例方法
用extend
实现,具体如下:
$.extend=$.fn.extend=function(){
var options, src, copy,
target = arguments[0] || {};
i = 1,
length = target.length;
if(i == length){
//只有一个参数就是对jQuery自身的扩展
target=this;
i--;
}
for(;i<target.length; i++){
if(options = arguments[i] != null){
for(name in options){
target[name] = options[name];
}
}
}
return target;
}
举例如下:
$.extend({},{a:1},{b,2})
有3个参数,因此不是对jQuery对象的扩展,返回{a:1,b:2}
.
而$.extend({function a(){}});
只有1个参数,即是将方法a
挂在jQuery
对象上。