JQuery建立例項歷程

2021-08-27 15:27:26 字數 885 閱讀 3903

jquery原始碼如下

// define a local copy of jquery

jquery = function( selector, context )

jquery.fn = jquery.prototype =

...}// give the init function the jquery prototype for later instantiation

jquery.fn.init.prototype = jquery.fn;

其中

jquery = function( selector, context )
定義了jquery變數就是乙個方法,方法體就是:

function( selector, context )
所以在外部我們呼叫$("selector")等價於呼叫

new jquery.fn.init( selector, context, rootjquery );

返回的就是jquery.fn.init的乙個例項。

由於

jquery.fn = jquery.prototype

jquery.fn.init.prototype = jquery.fn

所以

jquery.fn.init.prototype = jquery.prototype.init.prototype = jquery.prototype
所以jquery.fn.init的例項的prototype就是jquery.prototype,因此會繼承jquery.prototype上的屬性和方法。

jQuery建立例項與原型繼承揭秘

在普通情況下我們要用原生類 或者自定義類建立例項要用new運算子,使建構函式建立乙個例項,並且例項繼承構造器prototype上的所有公有方法。如 new object new date 等等!object有 陣列有這樣的快捷方式 我們主要 new這種方式。我們在使用jquery時從來沒有使用過ne...

建立jQuery外掛程式

全域性 類 方法 開發頻率低 物件 例項 方法 開發頻率高 選擇器 外掛程式 fun 名字空間 extend fn.外掛程式 fun fn.名字空間 fn.extend 方法名 function 方法名 function var newobject extend 合併多個物件 外掛程式 全域性 類 ...

jQuery 擴充套件 ajax例項

先前寫工具類都是自定義類,直接prototype,jquery擴充套件這一塊兒,一直也沒寫過,剛好今天有空,寫個試試。已經有很多人對jquery,jquery.fn,jquery.fn.extend詳細說明過了,此處不再贅述,直接上 jquery.ibt else pop mask fadein f...