不多說,直接上代碼! 第一種 extend <!-- extend 擴展jQuery,其實就是增加一個靜態方法 --> $.extend({ sayHello:function(name) { alert('Hello, '+(name?name:'XXXX')+' !') } }); $(func
不多說,直接上代碼!
第一種 extend
<!-- extend 擴展jQuery,其實就是增加一個靜態方法 -->
$.extend({
sayHello:function(name)
{
alert('Hello, '+(name?name:'XXXX')+' !')
}
});
$(function(){
$.sayHello();
$.sayHello('Zhangsan');
});
第二種 $.fn
<!-- $.fn 給JQuery對象,增加方法 -->
$.fn.Red=function(){
this.each(function(){
$(this).append(' '+$(this).attr('href'));
});
return this.css('color','red');
}
$(function(){
$("a").Red().css('color','gray');
});
第三種:綜合利用
<!-- 綜合利用 -->
$.fn.MyDesign=function(options){
var defaults={
'color':'red',
'fontSize':'12pt'
}
var settings=$.extend({},defaults,options)
this.each(function(){
$(this).append(' '+$(this).attr('href'));
});
return this.css({'color':settings.color,'fontSize':settings.fontSize});
}
第四種 優化(面向對象等細節方面)
;(function($,window,document,undefined){
var Beautifier= function(ele,options){
this.defaults={
'color':'yellow',
'fontSize':'20pt'
}
this.ele=ele,
this.options=options,
this.setting=$.extend({},this.defaults,this.options)
}
Beautifier.prototype={
beautify:function(){
return this.ele.css({
'color': this.setting.color,
'fontSize': this.setting.fontSize
})
}
}
$.fn.MyDesgin=function(options){
var beautifier=new Beautifier(this,options);
beautifier.beautify();
}
})(jQuery,window,document)