2 回答

TA貢獻(xiàn)1776條經(jīng)驗(yàn) 獲得超12個(gè)贊
//類級別插件開發(fā),主要是在jQuery中定義全局方法:
//第一種寫法
jQuery.myFunc = function(str){
alert("直接在jquery中定義方法",str)
}
//調(diào)用方式 $.myFunc("hello!");
//第二種寫法
jQuery.extend({
myFunc:function(str){
alert("extend擴(kuò)展$的方法",str)
}
})
//調(diào)用方式 $.myFunc("hello!");
//第三種寫法: 為了不污染全局,掛載一個(gè)對象作為命名空間,自定義的所有方法放在這里,保證jQuery全局安全。
jQuery.define={
myFunc:function(str){
alert("命名空間的寫法",str)
}
}
//調(diào)用方式:$.define.myFunc("hello");
//以上三種是級別插件開發(fā)方式,不常用,從調(diào)用方式看出,他們是全局執(zhí)行的,不需要綁定節(jié)點(diǎn)對象。
//對象級別插件開發(fā):有規(guī)范模板
;(function($){
$.fn.plugin = function(options){
var defaults = {
//各種默認(rèn)參數(shù)
}
var options = $.extend(defaults,options); //傳入的參數(shù)覆蓋默認(rèn)參數(shù)
this.each(function(){
var _this = $(this); //緩存一下插件傳進(jìn)來的節(jié)點(diǎn)對象。
//執(zhí)行內(nèi)容
})
return $(this); //把節(jié)點(diǎn)對象返回去,為了支持鏈?zhǔn)秸{(diào)用。
}
})(jQuery);
//調(diào)用方式
$("selector").plugin({
//自定義參數(shù),json格式
})
- 2 回答
- 0 關(guān)注
- 446 瀏覽
添加回答
舉報(bào)