@OverWrite BlogJava

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            128 隨筆 :: 0 文章 :: 29 評論 :: 0 Trackbacks

          以下轉自http://miokafe.com,介紹了jQuery的部分原理和實現,對理解jQuery有很大幫助.

          jQuery是個出色的javascript庫,最近結合它寫javascript,看了下源碼。

          先從整體、全局的看,jQuery的源碼幾乎都在下面的代碼中:

           

          (function(){

          //……

          }
          )();

           

          第一個括號里面是個匿名函數,第二個括號表示馬上執行第一個括號里面的代碼。
          首先明白,javascript里面是沒有命名空間的,要保證你的javascript函數、對象與其他的不沖突,這里用了javascript的一個技巧:你的所有javascript函數、對象都在一個匿名函數里面定義,確保了所定義的函數、對象的有效范圍,起到了命名空間的作用。既然作用范圍在這個匿名函數中,怎么被別人使用呢?下面看它的下面代碼:

           

          var jQuery = window.jQuery = function(selector, context) {
          //……
          }
          ;

           

          這里讓jQuery庫中最重要的對象jQuery成為了window對象的一個屬性,這樣就可以在其他地方像使用document(document也是window的一個屬性)一樣使用jQuery了。也許使用過jQuery的朋友驚訝-我沒有使用jQuery對象,一直使用$的。沒錯,那是jQuery的同名對象:

          window.$ = jQuery;

          現在明白了吧。

           

          posted on 2008-02-18 11:46 vesung 閱讀(3160) 評論(4)  編輯  收藏 所屬分類: Ajax/html

          評論

          # re: jQuery源碼詳解(轉) 2009-09-12 19:34 3err4rd
          3e34ee3  回復  更多評論
            

          # re: jQuery源碼詳解(轉) 2016-04-08 16:14 ss
          dsad  回復  更多評論
            

          # re: jQuery源碼詳解(轉) 2016-06-01 15:00 阿道夫
          不錯  回復  更多評論
            

          # re: jQuery源碼詳解(轉) 2016-07-27 11:50
          是  回復  更多評論
            

          主站蜘蛛池模板: 闽清县| 财经| 蓬安县| 沙坪坝区| 芜湖县| 错那县| 杭州市| 百色市| 新宁县| 无锡市| 海门市| 自治县| 祥云县| 会理县| 麻江县| 玉山县| 固始县| 延津县| 池州市| 嘉义县| 阳原县| 和平区| 水城县| 昌图县| 彩票| 牟定县| 临海市| 阿克| 崇义县| 禹城市| 斗六市| 海宁市| 新津县| 措勤县| 正镶白旗| 枝江市| 雅安市| 威信县| 宣汉县| 平利县| 泽库县|