**:
以下是jquery
1.3.2 **片段
js**
...
jquery = window.jquery = window.$ =
function
( selector, context ) ;
jquery.fn=jquery.prototype=,
...
}
jquery.fn.init.prototype = jquery.fn;
...
...初看上去像是在用原型方式jquery = window.jquery = window.$ = function( selector, context ) ;
jquery.fn=jquery.prototype=,
...}jquery.fn.init.prototype = jquery.fn;
...
定義乙個類jquery($),但實際我們使用時是函式呼叫$("#id"),卻不是new $("#id")。
function jquery中new了乙個function init的例項,然後返回。見具名函式的呼叫方式(3)
。jquery寫的實在詭異,它把init又掛在了function jquery的prototype上,閱讀起來有些繞人。
jquery.fn.init.prototype = jquery.fn;是關鍵的一句。該句把function jquery的原型賦值給了function init的原型。當呼叫$("#id")時返回的物件組成包括兩個部分。
1,由function init中this帶的(如length,context);
2,由function jquery的prototype帶的(如size,each,attr等方法);
模仿jquery來寫乙個
js**
function
$(selector)
$.prototype=
else
this
.length=1;
},
attr:
function
(name,value),
hide:
function
(),3000);
return
this
;//鏈式呼叫
}
}
$.prototype.init.prototype=$.prototype;
簡單起見,這裡$只傳html element或元素id,this上掛了length屬性,賦值為1。當我們如下呼叫時
js**
varobj = $();
console.dir(obj);
這行**實際沒有什麼意義,只是為了測試呼叫後obj的組成。firebug控制台輸出如下:
length:0;
init:function
attr:function
hide:function
即obj物件是由function init中this及function $.prototype組成的。
測試下$.prototype上的方法(假設頁面body新增了id=content):
js**
$("content"
).attr(
"bgcolor"
,"red"
).hide();
先呼叫attr新增了id=content屬性,稍候就隱藏了。
總結下:
jquery物件指的是jquery.prototype.init的例項,簡單的說就是new jquery.prototype.init。
這裡jquery.prototype.init的型別是function,可以看成是乙個類。原始碼中如下:
js**
jquery = window.jquery = window.$ =
function
( selector, context ) ,
jquery物件由以下部分組成:
1,掛在jquery.prototype.init中的this上的屬性或方法。
2,掛在jquery.prototype.init.prototype上的屬性或方法。
3,因為把jquery.prototype賦值給了jquery.prototype.init.prototype,所以掛在jquery.prototype上的屬性和方法也jquery物件的一部分。
JQuery 學習之 一
關於jquery 的歷史就不再講敘了,網路上比比皆是,呵呵不過想學習一門新的技術,了解它的前生和現在的應用範圍以及以後的發展領域是值得翻閱滴.剛剛開始 得做好筆記 推薦 1 官方以及論壇 2 推薦網頁 http www.cssrain.cn demo lab e7 ac ac e4 b8 80 e7...
jquery外掛程式之一些小鏈結
1.驗證 驗證的外掛程式 2.前端ui 首頁動態的外掛程式 3.bootstrap 用於響應式前端架構 響應式 不用重新整理整個頁面,可區域性重新整理部分 傳統的後台管理頁面,例如有使用者密碼彈出框之類的 小外掛程式 比如滑鼠移動框 bootstrap適合前端和後台的,提供的功能有js,css,和字...
JQuery 筆記 一 jQuery核心
前言 jquery核心是最基礎的jquery物件,或者叫函式,有了它我們才可以進行其它的操作,所以,需要認真掌握。jquery核心函式 1 獲取jquery物件 包裝集 對於jquery來說,獲取物件然後進行相關的操作,所以獲取物件是第一步,這裡提供了三種獲取jquery物件的模式,而通過選擇器模式...