jQuery2.1.1源碼分析(一)---微型jQuery架構

來源:互聯網
上載者:User

標籤:style   blog   http   color   io   ar   div   sp   cti   

錯誤很多,多多指教。

去掉繁雜的代碼,下面就相當於一個微型的jQuery架構。

//一個js函數function,閉包傳入window變數運行,
(function(window){
//定義jQuery賦值給3個變數,返回一個對象jQuery.fn.init的執行個體化 var jQuery = window.jQuery = window.$ = function( selector, context ) { return new jQuery.fn.init( selector, context); };
//定義jQuery下的fn,jQuery.prototype為一個對象 jQuery.fn = jQuery.prototype = {
//名為init的函數,功能是警告第一個參數selector init:function(selector, context){ alert("當前選擇的元素是:" + selector); },
//add函數,警告文字,返回this,指向,方便鏈式調用, add : function() { alert("執行方法:add()"); return this; } }
//為鏈式調用,在每個init的函數內都擁有整個jQuery功能函數。 jQuery.fn.init.prototype = jQuery.fn; })(window); $("dd").add().add(); //彈出當前選擇的元素是:dd,

——————————————————————
知識點:
1.閉包
http://www.cnblogs.com/dewin/archive/2010/06/17/1759477.html

2.可以用$調用函數
原代碼var jQuery = window.$ = window.jQuery;
當你在閉包外面訪問時比如用jQuery,實際是訪問的window.jQuery,$同理,這個全域變數。js中全域成員,就是指的為window添加屬性,反之亦然。

3.

$("dd").add().add();
按照邏輯順序詳解,$("dd")訪問函數,並傳遞了第一個參數dd,返回的是一個待處理塊。
執行個體化,new jQuery.fn.init(),找到函式宣告,jQuery.fn對象的屬性init函數。傳入參數dd,執行功能,將彈出當前選擇的元素是:dd;
$("dd").add(),通

()

 

jQuery2.1.1源碼分析(一)---微型jQuery架構

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.