對(duì)象級(jí)別的插件開發(fā)
編寫框架代碼
$.fn.extend創(chuàng)建一個(gè)對(duì)象級(jí)別的插件
;(function($){
$.fn.extend({
"border":function(options){
//插件代碼處
}
});
})(jQuery)
填充代碼內(nèi)容
;(function($){
$.fn.extend({
"border":function(options){
//插件代碼處
options = $.extend({
width:"1px",
line:"solid",
color:"#eee"
},options);
this.css("border",options.width+' '+options.line+' '+options.color);
return this;//方便鏈?zhǔn)奖磉_(dá)式語法
}
});
})(jQuery)
border方法接收一個(gè)options參數(shù),傳入的是一個(gè)json對(duì)象。
使用方法
$("#nav").border({
width:"10px",
color:"red"
});
傳入的json對(duì)象會(huì)按照屬性一個(gè)個(gè)地去替換默認(rèn)值
類級(jí)別的插件開發(fā)
類似于$.trim()或者是$.ajax(),他們不需要先獲得jQuery選擇器的實(shí)例。
語法框架和對(duì)象級(jí)別的一模一樣,只需要將功能實(shí)體返回即可,如下:
;(function($){
$.fn.extend({
"border":function(options){
//插件代碼處
options = $.extend({
content:"default"
},options);
//功能函數(shù)處,最后返回它的引用
var retVal = alert(options.content);
return retVal;
}
});
})(jQuery)