亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JavaScript的jQuery庫插件的簡要開發(fā)指南

 更新時間:2015年08月12日 16:55:41   作者:libuchao  
這篇文章主要介紹了JavaScript的jQuery庫插件的簡要開發(fā)指南,分為基于選擇器的插件和不基于選擇器的插件兩種情況,需要的朋友可以參考下

jQuery 插件通常分兩類。

  1.     基于選擇器的插件(支持鏈式操作)
  2.     不基于選擇器的插件(不支持鏈式操作)

前段時間簡單學習了 jQuery 插件開發(fā),開發(fā)了兩個簡單的插件,在此對兩種插件的開發(fā)模式做簡要總結(jié)。
基于選擇器的插件

通常開發(fā)模式如下:

(function($, window, undefined) {
 $.fn.PluginName = function(opts) {
 var defaults = {
  // 插件自定義選項的默認值
 };

 // 以用戶的自定義選項覆蓋默認選項
 var options = $.extend(defaults, opts || {});

 return this.each(function() { // 讓插件支持鏈式操作
  // 在這里編寫插件功能代碼
 });
 };
})(jQuery, window);

首先,創(chuàng)建一個匿名的自執(zhí)行函數(shù),形參為 $ 、 window 和 undefined,實參為 jQuery 和 window。

嗯?為什么沒有為 undefined 對應地傳入一個實參呢?這是一個小技巧,考慮到 undefined 這個變量名可能在其它地方的 JavaScript 代碼賦過值,失去了它真正的意義,所以這里干脆不傳入這個參數(shù),以確保它在那個匿名自執(zhí)行函數(shù)中是真正的 undefined。

jQuery 傳入后對應為 $,這樣可以保證插件內(nèi)調(diào)用的 $ 一定是 jQuery 而非 Prototype 之類的庫。

此類插件的調(diào)用方式一般為 $(selector).PluginName(); 這種形式。

此類具體示例可參考 https://github.com/libuchao/KTwitter
不基于選擇器的插件

由于此類插件不依賴于選擇器,所以也無鏈式操作一說。一般開發(fā)模式如下:

(function($, window, undefined) {
 $.PluginName = function(opts) {
 var defaults = {
  // 插件自定義選項的默認值
 };

 // 以用戶的自定義選項覆蓋默認選項
 var options = $.extend(defaults, opts || {});

 // 在這里編寫插件功能代碼
 };
})(jQuery, window);

此類插件的調(diào)用形式一般為 $(selector).PluginName(); 這種形式。

相關(guān)文章

最新評論