《jQuery技術內幕:深入解析jQuery架構設計與實現原理》是2014年機械工業出版社出版的圖書,作者是高雲。
基本介紹
- 中文名:jQuery技術內幕:深入解析jQuery架構設計與實現原理
- 外文名:JQuery Internals Architecture and Implementation in Depth
- 作者:高雲
- 出版社:機械工業出版社
- 頁數:616頁
- 開本:16開
- 定價:99.00元
- 類型:彙編語言
- 出版日期:2014年1月1日
- 語種:簡體中文
- ISBN:9787111440826
- 品牌:機械工業出版社
內容簡介,作者簡介,圖書目錄,文摘,
內容簡介
《jQuery技術內幕:深入解析jQuery架構設計與實現原理》首先通過“總體架構”梳理了各個模組的分類、功能和依賴關係,讓大家對jQuery的工作原理有大致的印象;進而通過“構造jQuery對象”章節分析了構造函式jQuery()的各種用法和內部構造過程;接著詳細分析了底層支持模組的源碼實現,包括:選擇器Sizzle、異步佇列Deferred、數據快取Data、佇列Queue、瀏覽器功能測試Support;最後詳細分析了功能模組的源碼實現,包括:屬性操作Attributes、事件系統Events、DOM遍歷Traversing、DOM操作Manipulation、樣式操作CSS、異步請求Ajax、動畫Effects。
高雲編著的《jQuery技術內幕(深入解析jQuery架構設計與實現原理)》共分四部分,分別是:第一部分(第1章)對jQuery的設計理念、總體架構和源碼結構進行了介紹和分析,讓讀者對jQuery有整體的認識。
第二部分(第2章)詳細介紹和分析了構造函式jQuery的用法、構造過程、原型屬性和方法、靜態屬性和方法。
第三部分(第3~7章)詳細分析了底層支持模組的源碼實現,包括選擇器Sizzle、異步佇列Deferred Object、數據快取Data、佇列Queue、瀏覽器功能測試Support。
第四部分(第8~14章)詳細分析了功能模組的源碼實現,包括屬性操作Attributes、事件系統Events、DOM遍歷Traversing、DOM操作Manipulation、樣式操作CSS、異步請求Ajax、動畫Effects。
第二部分(第2章)詳細介紹和分析了構造函式jQuery的用法、構造過程、原型屬性和方法、靜態屬性和方法。
第三部分(第3~7章)詳細分析了底層支持模組的源碼實現,包括選擇器Sizzle、異步佇列Deferred Object、數據快取Data、佇列Queue、瀏覽器功能測試Support。
第四部分(第8~14章)詳細分析了功能模組的源碼實現,包括屬性操作Attributes、事件系統Events、DOM遍歷Traversing、DOM操作Manipulation、樣式操作CSS、異步請求Ajax、動畫Effects。
作者簡介
高雲,阿里巴巴資深前端開發工程師(花名墨智),擁有豐富的前端開發經驗,擅長HTML5、CSS、JavaScript等Web開發技術和Java技術,對JavaScript相關技術的套用與實現原理有深入研究和獨到見解
圖書目錄
前言
第一部分 總體架構
第1章 總體架構
1.1 設計理念
1.2 總體架構
1.3 自調用匿名函式
1.4 總結
第二部分 構造jQuery對象
第2章 構造jQuery對象
2.1構造函式jQuery()
2.1.1 jQuery(selector[,context】)
2.1.2 jQuery(html【,ownerDocument])、jQuery(html,props)
2.1.3 jQuery(element)、jQuery(elementArray)
2.1.4 jQuery(object)
2.1.5 jQuery(callback)
2.1.6 jQuery(jQuery object)
2.1.7 jQuery()
2.2總體結構
2.3 jQuery.fn.init(selector,context,rootjQuery)
2.3.1 12個分支
2.3.2源碼分析
2.3.3 小結
2.4 jQuery.buildFragrnent(args,nodes,scripts)
2.4.1 實現原理
2.4.2源碼分析
2.4.3 小結
2.5 jQuery.clean(elems,context,fragment,scripts)
2.5.1 實現原理
2.5.2源碼分析
2.5.3 小結
2.6 jQuery.extend()、jQuery.fn.extend()
2.6.1如何使用
2.6.2源碼分析
……
第三部分 底層支持模組
第3章 選擇器Sizzle
第4章 異步佇列DeferredObject
第5章 數據快取Data
第6章 佇列Queue
第7章 瀏覽器功能測試Support
第四部分 功能模組
第8章 屬性操作Attributes
第9章 事件系統Events
第10章 DOM遍歷Traversing
第11章 DOM操作Manipulation
第12章 樣式操作CSS
第13章 異步請求Ajax
第14章 動畫Effects
第一部分 總體架構
第1章 總體架構
1.1 設計理念
1.2 總體架構
1.3 自調用匿名函式
1.4 總結
第二部分 構造jQuery對象
第2章 構造jQuery對象
2.1構造函式jQuery()
2.1.1 jQuery(selector[,context】)
2.1.2 jQuery(html【,ownerDocument])、jQuery(html,props)
2.1.3 jQuery(element)、jQuery(elementArray)
2.1.4 jQuery(object)
2.1.5 jQuery(callback)
2.1.6 jQuery(jQuery object)
2.1.7 jQuery()
2.2總體結構
2.3 jQuery.fn.init(selector,context,rootjQuery)
2.3.1 12個分支
2.3.2源碼分析
2.3.3 小結
2.4 jQuery.buildFragrnent(args,nodes,scripts)
2.4.1 實現原理
2.4.2源碼分析
2.4.3 小結
2.5 jQuery.clean(elems,context,fragment,scripts)
2.5.1 實現原理
2.5.2源碼分析
2.5.3 小結
2.6 jQuery.extend()、jQuery.fn.extend()
2.6.1如何使用
2.6.2源碼分析
……
第三部分 底層支持模組
第3章 選擇器Sizzle
第4章 異步佇列DeferredObject
第5章 數據快取Data
第6章 佇列Queue
第7章 瀏覽器功能測試Support
第四部分 功能模組
第8章 屬性操作Attributes
第9章 事件系統Events
第10章 DOM遍歷Traversing
第11章 DOM操作Manipulation
第12章 樣式操作CSS
第13章 異步請求Ajax
第14章 動畫Effects
文摘
第175~182行:如果所找到元素的屬性id值與傳人的值相等,則設定第一個元素、屬性length、context、selector,並返回當前jQuery對象。
此時依然在字元串分支中,參數selector不是單獨標籤、複雜HTML代碼、#id,而是選擇器表達式。如果沒有指定上下文,則執行rootjQuery.find(selector);如果指定了上下文,且上下文是jQuery對象,則執行context.find(selector);如果指定了上下文,但上下文不是jQuery對象,則執行this.constructor(context).find(selector),即先創建一個包含了context的jQuery對象,然後在該jQuery對象上調用方法.find()。
第197—199行:如果參數selector是函式,則認為是綁定ready事件。從第198行代碼可以看出$(function)是$(document).ready(function)的簡寫。
方法jQuery.isFunction()將在2.8.2節介紹和分析。
此時依然在字元串分支中,參數selector不是單獨標籤、複雜HTML代碼、#id,而是選擇器表達式。如果沒有指定上下文,則執行rootjQuery.find(selector);如果指定了上下文,且上下文是jQuery對象,則執行context.find(selector);如果指定了上下文,但上下文不是jQuery對象,則執行this.constructor(context).find(selector),即先創建一個包含了context的jQuery對象,然後在該jQuery對象上調用方法.find()。
第197—199行:如果參數selector是函式,則認為是綁定ready事件。從第198行代碼可以看出$(function)是$(document).ready(function)的簡寫。
方法jQuery.isFunction()將在2.8.2節介紹和分析。