欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

jQuery學(xué)習(xí)筆記之總體架構(gòu)

 更新時間:2014年06月03日 09:13:36   作者:  
jQuery是一個兼容多瀏覽器的javascript框架,核心理念是write less,do more(寫得更少,做得更多)。如今,jQuery已經(jīng)成為最流行的javascript框架,在世界前10000個訪問最多的網(wǎng)站中,有超過55%在使用jQuery。那么作為一個前端設(shè)計師,怎么可能不來深入了解下jQuery呢,首先我們從他的總體構(gòu)架開始吧

先來看代碼:

復(fù)制代碼 代碼如下:

(function (window, undefined) {
            //構(gòu)建jQuery對象
            var document = window.document,
                navigator = window.navigator,
                location = window.location;
            var jQuery = (function () {
                var jQuery = function (selector, context) {
                    return new jQuery.fn.init(selector, context, rootjQuery);
                },
                _jQuery = window.jQuery;
                //............................
                //............................                 
                return jQuery; //981行
            })();
            //工具方法:Utilities;我在jQuery源碼中沒有發(fā)現(xiàn)是哪一塊,如果有發(fā)現(xiàn)的.可以告訴我一下
            //回調(diào)函數(shù)列表 Callbacks
            //異步隊列 Deferred
            //瀏覽器功能測試 Support
            //數(shù)據(jù)緩存  Cache
            //屬性操作  Attributes
            //隊列 Queue
            //事件系統(tǒng) Event
            //選擇器 Sizzle
            //Dom遍歷 Traversing
            //Dom操作 Manipulation
            //樣式操作 CSS
            //異步請求 Ajax
            //動畫 Effects
            //坐標(biāo) Offset. 尺寸Dimensions
            window.jQuery = window.$ = jQuery;
        })(window);

1.這個就是jQuery源碼的結(jié)構(gòu)了.個人覺得還是相當(dāng)?shù)那逦陀袟l理的.

2.jQuery的整個最外層就是一個自調(diào)用的匿名函數(shù),這樣就可以創(chuàng)建一個閉包.該閉包中的各種變量,函數(shù)就不會和閉包外的變量和函數(shù)發(fā)生影響,確保了jQuery的獨立性,安全性.

3最后一句代碼:window.jQuery = window.$ = jQuery;則是定義了一個全局變量jQuery和$.并且吧私有變量jQuery的引用賦給了這個全局變量.

4.將最大的對象window當(dāng)做實參傳遞到函數(shù)中,使得window變成了局部變量,可以大大的縮短查找window的查找時間,同樣節(jié)省資源.

5,第二個參數(shù)undefined,是一個形參,在實際執(zhí)行的時候,沒有獲得參數(shù)賦值,那么系統(tǒng)就會給他自動賦值成undefined.這樣在jQuery的閉包中確保了undefined值的真時性,因為undefined在jQuery的外面有可能被篡改掉.盡管這個篡改的結(jié)果,各種瀏覽器不一樣.

相關(guān)文章

最新評論