国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JavaScript的jQuery庫插件的簡要開發指南

2019-11-20 11:50:30
字體:
來源:轉載
供稿:網友

jQuery 插件通常分兩類。

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

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

通常開發模式如下:

(function($, window, undefined) { $.fn.PluginName = function(opts) { var defaults = {  // 插件自定義選項的默認值 }; // 以用戶的自定義選項覆蓋默認選項 var options = $.extend(defaults, opts || {}); return this.each(function() { // 讓插件支持鏈式操作  // 在這里編寫插件功能代碼 }); };})(jQuery, window);

首先,創建一個匿名的自執行函數,形參為 $ 、 window 和 undefined,實參為 jQuery 和 window。

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

jQuery 傳入后對應為 $,這樣可以保證插件內調用的 $ 一定是 jQuery 而非 Prototype 之類的庫。

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

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

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

(function($, window, undefined) { $.PluginName = function(opts) { var defaults = {  // 插件自定義選項的默認值 }; // 以用戶的自定義選項覆蓋默認選項 var options = $.extend(defaults, opts || {}); // 在這里編寫插件功能代碼 };})(jQuery, window);

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 雅安市| 长泰县| 宜州市| 筠连县| 景德镇市| 伊宁市| 鄂托克旗| 洪泽县| 阿勒泰市| 扎囊县| 新蔡县| 九寨沟县| 定州市| 松原市| 普陀区| 承德市| 昌江| 长兴县| 申扎县| 汕头市| 沾化县| 景东| 伊吾县| 麻城市| 绍兴县| 光山县| 云安县| 定边县| 哈尔滨市| 蒙山县| 金溪县| 淅川县| 怀远县| 盐边县| 平顶山市| 邢台县| 鹰潭市| 马龙县| 都匀市| 元氏县| 将乐县|