jQuery 編寫外掛程式

2021-10-03 10:41:01 字數 1473 閱讀 6082

編寫乙個jquery外掛程式的原則:

給$.fn繫結函式,實現外掛程式的**邏輯;

外掛程式函式最後要return this;以支援鏈式呼叫;

外掛程式函式要有預設值,繫結在$.fn..defaults上;

使用者在呼叫時可傳入設定值以便覆蓋預設值。

一、$.fn

給jquery物件繫結乙個新方法是通過擴充套件$.fn物件實現的。

$.fn.highlight1 = function () 

注意到函式內部的this在呼叫時被繫結為jquery物件,所以函式內部**可以正常呼叫所有jquery物件的方法。

最後要return this;,因為jquery物件支援鏈式操作,我們自己寫的擴充套件方法也要能繼續鏈式下去

$('#test-highlight1 span').highlight1(); //呼叫外掛程式

二、手動傳參
$.fn.highlight2 = function (options) 

$('#test-highlight2 span').highlight2();

三、$.extend(target, obj1, obj2, …)

使用jquery提供的輔助方法$.extend(target, obj1, obj2, …),它把多個object物件的屬性合併到第乙個target物件中,遇到同名屬性,總是使用靠後的物件的值,也就是越往後優先順序越高:

// 把預設值和使用者傳入的options合併到物件{}中並返回:

var opts = $.extend({}, , options);

四、傳入預設值(最終版)
$.fn.highlight = function (options) , $.fn.highlight.defaults, options);

this.css('backgroundcolor', opts.backgroundcolor).css('color', opts.color);

return this;

}// 設定預設值:

$.fn.highlight.defaults =

//呼叫外掛程式

$.fn.highlight.defaults.color = '#659f13';

$.fn.highlight.defaults.backgroundcolor = '#f2fae3';

$('#test-highlight p:first-child span').highlight();

五、針對特定元素的擴充套件

助filter()方法來過濾來實現針對特定元素的擴充套件。

先寫出使用者呼叫的**:

$('#main a').external();

然後按照上面的方法編寫乙個external擴充套件:

$.fn.external = function ()

});}

});}

jquery外掛程式編寫

最近大家都玩什麼react node angular這些玩意去了 隨著瀏覽器的相容性 以及前端開發思想的進化 jquery逐漸被拋棄 現在自己也很少用了 純粹為了懷戀曾經的jquery.現在寫寫jquery外掛程式的寫法。沒事的時候避免老年痴呆,可以用來玩玩。寫法一 function window ...

jQuery 編寫外掛程式

jquery為開發外掛程式提供了兩個方法,分別是 1 類級別的外掛程式開發,即給jquery新增新的全域性函式,相當於給jquery類本身新增方法。2 物件級別的外掛程式開發,即給jquery物件新增方法。1 類級別的外掛程式開發 用的比較少 a.新增全域性函式 jquery.foo functio...

編寫jQuery外掛程式

編寫外掛程式的目的是給已經有的一系列方法或函式做乙個封裝,以便在其他地方重複使用,提高開發效率和方便後期維護。本文將詳細介紹如何編寫jquery外掛程式 jquery的外掛程式主要分為3種型別 1 封裝物件方法 2 封裝全域性函式 可以將獨立的函式加到jquery命名空間下,如常用的jquery.a...