標籤:

jQuery-原型鏈

1、實例怎麼調用原型鏈上的方法?

我們創建一個$body,怎麼能夠調用到jQuery.prototype上的方法?

我們的body是由原型鏈上的init創建的:

new jQuery.fn.init()其實等同於new init(),init函數怎麼讓this和jQuery的原型掛鉤?從而使得實例能調用jQuery原型的方法呢?

源碼中有一處將init的原型改成jQuery的原型

基於它去改造我們的代碼:

那麼最後return的makeArray所return的this,其原型就是jQuery.fn,則可以調用原型上面的方法:

簡化如下:

2、鏈式調用怎麼實現?

假設我想要下面這種用法:

其實只要在方法的底部return this即可;

簡化如下:


推薦閱讀:

jQuery 為什麼要劃分.bind()和.live()?
jquery怎麼樣才能算精通,有哪些高級視頻教程,有推薦的嗎?
使用jQuery時如何更好的組織代碼?
jQuery 的 animate() 函數支不支持 backgroundPosition?
為什麼一些大公司願意無償提供CDN服務?

TAG:jQuery |