国产探花免费观看_亚洲丰满少妇自慰呻吟_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(); 這種形式。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宁武县| 青龙| 威远县| 黎川县| 平定县| 太保市| 青海省| 贵阳市| 贵南县| 海阳市| 精河县| 嵩明县| 米泉市| 财经| 平阴县| 微山县| 安龙县| 穆棱市| 泌阳县| 高安市| 嘉定区| 进贤县| 东台市| 宝坻区| 扶绥县| 汉寿县| 历史| 晴隆县| 丹阳市| 虞城县| 桓仁| 页游| 桃园市| 张北县| 陇南市| 田林县| 搜索| 安国市| 化隆| 汾西县| 黄浦区|