posts - 241,  comments - 116,  trackbacks - 0
          selector = selector || document 暗示了如果$(),那么就相當(dāng)于$(document)

          selector.nodeType用來判斷是否是一個domElement對象,如果是直接將本對象包裝成jquery對象返回,這里要說明一 點,實際jquery對象是一個偽數(shù)組或者說是一個功能異常強大的集合,你可以通過下標(biāo)去訪問里面的元素和length屬性,但它不會像數(shù)組一樣去幫你維 護(hù)里面的元素,比如你將length設(shè)為空,它不會幫你將里面的元素清空,因為他是一個偽造的。
          if ( typeof selector == "string" ) {
              ....
          }else if ( jQuery.isFunction( selector ) )
              return jQuery( document )[ jQuery.fn.ready ? "ready" : "load" ]( selector );

          return this.setArray(jQuery.makeArray(selector));
          判斷是否是字符串,情況比較多,稍后討論,先看簡單的,好像也不太簡單
          jQuery.isFunction( selector ) 判斷傳進(jìn)來的是否是一個函數(shù)
          isFunction函數(shù)體如下:
          return !!fn && typeof fn != "string" && !fn.nodeName &&
              fn.constructor != Array && /^[\s[]?function/.test( fn + "" );
          !!fn強制返回boolean型,然后否定了它不是字符串,不是dom元素,不是數(shù)組,然后用一個正則進(jìn)行驗證,為什么要加個"^[\s[]?"讓我很 困惑,因為這是一個全局函數(shù)所以才判斷這么多,實際上就這個邏輯關(guān)系,只用最后一個驗證就行了,因為前面已經(jīng)都有對應(yīng)的判斷了,不過這個方法還是相當(dāng)具有 價值的,多多品味

          jQuery( document )返回是一個骨子里是document的jquery對象
          [ jQuery.fn.ready ? "ready" : "load" ]如果jQuery.fn存在ready屬性,返回[ready]否則返回[load],這種寫法很值得借鑒,簡潔高效
          posted on 2011-09-05 10:04 墻頭草 閱讀(2564) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          人人游戲網(wǎng) 軟件開發(fā)網(wǎng) 貨運專家
          主站蜘蛛池模板: 肥东县| 通榆县| 都江堰市| 西青区| 皋兰县| 敦化市| 黄陵县| 威海市| 久治县| 榆林市| 尼玛县| 象山县| 邵武市| 连江县| 深圳市| 墨竹工卡县| 伊川县| 南雄市| 邵武市| 平顺县| 东台市| 湖州市| 宜君县| 涪陵区| 屯留县| 古蔺县| 林西县| 中西区| 禹州市| 嘉荫县| 牟定县| 翼城县| 长汀县| 吴旗县| 博野县| 屏边| 桃园县| 宁海县| 鄂伦春自治旗| 澄江县| 鹿泉市|