jQuery插件开发分为两种:
1.类级别
类级别你可以理解为拓展jquery类,最明显的例子是$.ajax(...),相当于静态方法
2.对象级别
对象级别则可以理解为基于对象的拓展,如$("#table").changeColor(...);
这里这个changeColor呢,就是基于对象的拓展了。
3.扩展
1.类级别
类级别你可以理解为拓展jquery类,最明显的例子是$.ajax(...),相当于静态方法
开发扩展其方法时使用$.extend方法,即jQuery.extend(object);
$.extend({
add:function(a,b){return a+b;} ,
minus:function(a,b){return a-b;}
});
页面中调用:
var i = $.add(3,2);
var j = $.minus(3,2);
2.对象级别
对象级别则可以理解为基于对象的拓展,如$("#table").changeColor(...);
这里这个changeColor呢,就是基于对象的拓展了。
$.fn.extend({
check:function(){
return this.each({
this.checked=true;
});
},
uncheck:function(){
return this.each({
this.checked=false;
});
}
});
页面中调用:
$('input[type=checkbox]').check();
$('input[type=checkbox]').uncheck();
3.扩展
$.xy = {
add:function(a,b){return a+b;} ,
minus:function(a,b){return a-b;},
voidMethod:function(){ alert("void"); }
};
var i = $.xy.add(3,2);
var m = $.xy.minus(3,2);
$.xy.voidMethod();
// 页面调用
$(document).ready(function() {
$('.introduction').slider({ speed: 5000 });
$('.banner').slider({ speed: 500 });
});
//扩展
//匿名函数
(function($){
$.fn.extend({ //对象级别扩展
slider:function(options){
var settings = $.extend({ //类级别扩展
speed: 500,//类成员属性
time:30
},
options);
return this.each(function(){ //为每一个调用slider函数的对象返回以下结果
alert(settings.speed);
});
}
});
})(jQuery);//匿名函数直接调用