圖書信息
JQuery風暴——完美用戶體驗
張子秋 編著ISBN 978-7-121-12891-2
2011年4月出版
定價:39.00元
16開
308 頁
宣傳語
學好jQuery1.4,更少代碼,更炫效果
結合jQuery1.4,快速掌握LBS地圖開發
搶灘jQuery Mobile,改善移動網際網路體驗
內 容 介 紹
本書全面講解了jQuery的各種技術,包括基礎特性、各類函式的介紹、使用jQuery進行AJAX調用、jQuery外掛程式的開發和使用等。書中對頁面設計和開發人員影響深遠的jQuery UI做了重點講解,還穿插了部分JavaScript的精華知識,指出了各種腳本開發的錯誤方法和誤區。接著給出自定義jQuery腳本框架和百度地圖開發的案例,從而掌握高效率頁面開發經驗和LBS(Location Based Service)套用開發的思路。最後,本書還專門講解了新鮮出爐的jQuery Mobile,讓我們在移動網際網路開發中先人一步。通過本書的學習將改變傳統的JavaScript開發方式,對於Web開發來說意義深遠。本書從豐富的實踐案例去講解jQuery用戶體驗,從而極大提升用戶的直觀感受。
jQuery的大版本已經更新到了1.4,這一版本的jQuery有了大量的更新,比如對於函式重新進行了分類,推出了全新的API文檔,這相當於重新整理了jQuery的知識體系結構。所以,本書的寫作目的不僅僅是講解jQuery中的技術知識,更側重建立完整清晰的jQuery知識體系,讓讀者知道jQuery的骨架,以後也能夠通過自己深入的學習讓羽翼更加豐滿。本書注重用戶體驗方面的介紹,在案例的選取上特別注重B/S企業的實踐經驗。
本書適合於Web開發工程師、用戶界面設計師、前端架構師、用戶體驗設計師、移動網際網路開發工程師、想深入學習jQuery知識的高級開發人員參考學習,還可作為高等院校相關專業的教學參考書。
前 言
jQuery無疑是現在最流行的腳本類庫之一。jQuery可以幫助用戶輕鬆地將動態功能套用到網頁,而且能最小化代碼量。jQuery有著豐富而絢麗的套用,包括訪問部分網頁、快速修改網頁內容、添加動畫、jQuery UI控制項的套用、套用AJAX技術、打造自己的腳本框架、開發熱門的LBS(Location Based Service)套用、jQuery Mobile開發移動網際網路服務等。
隨著用戶對網站體驗的要求越來越高,在用戶至上這一需求的推動下,作為開發者或者網站前台設計師而言,如果能在B/S的網站架構下真正用好jQuery來提高用戶體驗和滿意度,那么他或許能夠更加自信,在職場中也能把握更大的主動權。
這本書的特點有哪些?
如果沒有透徹理解JavaScript的精髓,那么對於jQuery的深入套用將缺乏基石。因此本書特別安排了內容來講解JavaScript,內容涉及命名規範、function、this指針、DOM、JSON等。有了這些基礎之後,我們開始踏上jQuery之旅,內容涉及如何利用選擇器把效果套用到段落和列表、事件處理和對不同表單元素執行驗證的技術、套用視覺效果、導航、AJAX、jQuery UI和打造屬於自己的jQuery腳本框架。
隨著LBS(Location Based Service)的套用越來越廣泛,本書還專門講解了百度地圖的開發。jQuery Mobile給移動網際網路的套用開發提供了便利性,本書在第一時間研究jQuery Mobile,並把相關的心得呈現出來。
如果你對JavaScript、HTML、CSS和jQuery稍有了解,那么這本書正是為你而準備的。因為本書涵蓋了利用jQuery展開工作時可能遇到的大多數問題,而且本書用通俗而淺顯的文字、個性化的套用案例,給出了學習jQuery的範例,用來解釋每一個新概念,並且每個範例都提供完整的代碼。
本書對於知識的組織、整理、歸類,以及如何讓讀者能夠建立完整的jQuery知識體系進行了自己獨特的探索。此外,jQuery的大版本已經更新到了1.4,這一版本的jQuery有了大量的更新,比如對於函式重新進行了分類,推出了全新的API文檔,這相當於重新整理了jQuery的知識體系結構。所以,本書寫作目的不僅僅是講解jQuery中的技術知識,更側重建立完整清晰的jQuery知識體系,讓讀者知道jQuery的骨架,以後也能夠通過自己深入的學習讓羽翼更加豐滿。
這本書適合你嗎?
 聽說過jQuery,明白jQuery在用戶體驗方面很“給力”,迫切想掌握該框架的您。
 了解JavaScript、HTML、CSS,想讓網站互動性更加完美的您。
 接觸過jQuery,但是理解不是那么深刻,特別對jQuery 1.4新特性很著迷的您。
 天天接觸jQuery,但是不曉得怎么來打造個性化jQuery腳本框架的您。
 對LBS(Location Based Service)已經如雷貫耳了,希望開發適合自己套用的您。
 剛剛聽說jQuery Mobile推出了,正在琢磨著如何改善移動網際網路體驗的您。
能學到什麼?
 使用jQuery的API文檔的技巧。
 把效果套用到段落和列表。
 靈活設定頁面布局和頁面導航。
 豐富的事件處理機制和動畫效果。
 jQuery UI完美套用。
 自定義和封裝自己的jQuery框架。
 jQuery與百度地圖構建LBS(Location Based Service)熱門套用。
 jQuery Mobile,開發基於移動網際網路平台的套用。
本書涉及哪些jQuery的新特性?
1. 完美的JS智慧型提示支持
2. 功能強大的選擇器(支持CSS1-3選擇器及各種功能強大的選擇器)
3. 性能最佳的選擇器
4. 支持多種瀏覽器
IE 6.0+、 FF 2+、Safari 3.0+、Opera 9.0+、Chrome。
5. 優雅的鏈式語法
$(".myClass").css("color", "red").show();
6. AJAX操作
$("#divResult").load("../data/AjaxGetCityInfo.aspx", { "resultType": "html" });
7. Datepicker日曆控制項
8. Dialog對話框控制項
9. Tab控制項
10. accordion手風琴選單控制項
11. ProgressBar進度條控制項
12. Slider滑動條控制項
13. Button按鈕控制項
14. autocomplete自動提示控制項
15. 易於擴展(基於jQuery開發的日曆框)
16.jQuery Mobile(開發基於移動網際網路平台的炫麗套用)
致謝
寫作的過程漫長而且艱辛,歷時一年多,甚至跨越了jQuery版本(在剛開始寫作時還是1.3.2版本)。
在寫作本書的時候,我腦子裡總是不停地思考,如何把知識講解得簡單,如何讓讀者更容易讀懂,閱讀起來更加流暢。因為我自己就常常遇到看書時,發現書中的知識過於跳躍或者語言晦澀很難理解的情況。但是為了易於讀者理解本書的內容,本書也犧牲了一些展示複雜代碼和技術的機會。如果在你一口氣看完全書後,有躍躍欲試的感覺,甚至感覺還不過癮的話,那么說明你上道了,這總比看了一半鬱悶地扔掉本書要好多了。
本書由張子秋編著。在編寫過程中,萬雷、王斌、張強林、張賽橋、黃北軍、王文佳、王曉也做了大量的工作。成都道然科技有限責任公司參與了本書審核校對工作。此外,還要感謝藝龍網、時光網、我的母親周立波、我的父親張躍、我的領導王雪、於泳洋、鄒正宸。由於筆者能力和知識有限,如有疏漏,還請讀者批評指正
目 錄
第1章 jQuery入門 1
1.1 認識jQuery 2
1.1.1 認識jQuery 2
1.1.2 jQuery之美 3
1.1.3 jQuery與其他腳本類庫的比較 5
1.2 上手jQuery 6
1.2.1 jQuery版本介紹 6
1.2.2 在Visual Studio中使用jQuery 7
1.2.3 在Aptana中使用jQuery 8
1.3 Hello jQuery實例 10
1.3.1 添加腳本引用 10
1.3.2 添加DOM元素 11
1.3.3 創建頁面腳本對象 11
1.4 小結 12
第2章 必須知道的JavaScript知識 13
2.1 JavaScript基礎 14
2.1.1 Javascript與ECMAScript 14
2.1.2 JavaScript中的值類型和引用類型 14
2.1.3 JavaScript中的原始類型 15
2.1.4 undefined、null和typeof運算符 15
2.1.5 變數聲明 17
2.1.6 JavaScript命名規範 17
2.1.7 變數的作用域與閉包 18
2.2 悟透JavaScript中的function 20
2.2.1 使用function聲明方法和類型 20
2.2.2 function的本質 21
2.2.3 new 運算符 21
2.2.4 function的arguments參數對象 22
2.2.5 理解this指針 22
2.3 JavaScript中的原型 24
2.3.1 使用原型實現JavaScript的面向對象 24
2.3.2 使用原型鏈實現繼承 25
2.4 DOM 26
2.4.1 什麼是DOM 26
2.4.2 操作HTML DOM對象 26
2.4.3 DOM元素與HTML元素 28
2.5 其他JavaScript秘籍 29
2.5.1 數據通信格式JSON 29
2.5.2 動態語言——eval 31
2.5.3 JavaScript中的邏輯運算符 32
2.6 小結 35
第3章 jQuery核心基礎 36
3.1 jQuery對象 37
3.1.1 什麼是jQuery對象 37
3.1.2 jQuery對象深入解析 37
3.1.3 jQuery對象轉換為DOM對象 38
3.1.4 DOM對象轉化為jQuery對象 39
3.1.5 jQuery對象的鏈式操作 39
3.1.6 “$”變數的使用 40
3.1.7 解決多類庫衝突——“$”變數衝突問題 41
3.2 jQuery文檔處理程式 42
3.2.1 jQuery文檔處理程式介紹 42
3.2.2 文檔處理程式的優勢 43
3.2.3 jQuery文檔處理程式深入解析 44
3.2.4 jQuery文檔處理程式注意事項 46
3.3 jQuery幫助文檔 49
3.3.1 JQuery API線上幫助文檔 49
3.3.2 jQuery API線上幫助文檔分類 50
3.3.3 jQuery API中文幫助文檔 51
3.4 小結 52
第4章 萬能的jQuery選擇器 53
4.1 jQuery選擇器基礎 54
4.1.1 什麼是jQuery選擇器 54
4.1.2 jQuery選擇器核心函式 54
4.1.3 jQuery選擇器分類 55
4.1.4 使用jQuery選擇器實驗室 55
4.1.5 選擇器使用技巧 57
4.2 基礎選擇器 59
4.2.1 基礎選擇器列表 59
4.2.2 基礎選擇器使用要點 59
4.3 層次選擇器 59
4.3.1 層次選擇器列表 60
4.3.2 層次選擇器使用要點 60
4.4 基本過濾器 61
4.4.1 基本過濾器列表 61
4.4.2 基本過濾器使用要點 62
4.5 內容過濾器 63
4.5.1 內容過濾器列表 63
4.5.2 內容過濾器使用要點 63
4.6 可見性過濾器 63
4.6.1 可見性過濾器列表 63
4.6.2 可見性過濾器使用要點 64
4.7 屬性過濾器 64
4.7.1 屬性過濾器列表 64
4.7.2 屬性過濾器使用要點 65
4.8 子元素過濾器 65
4.8.1 子元素過濾器列表 65
4.8.2 子元素過濾器使用要點 66
4.9 表單類別過濾器 66
4.9.1 表單類別過濾器列表 66
4.9.2 表單類別過濾器使用要點 67
4.10 表單屬性過濾器 68
4.10.1 表單屬性過濾器列表 68
4.10.2 表單屬性過濾器使用要點 68
4.11 小結 69
第5章 管理jQuery對象集合 70
5.1 動態創建元素 71
5.1.1 使用JavaScript創建對象 71
5.1.2 使用jQuery創建對象 72
5.1.3 創建對象常見錯誤 73
5.2 過濾函式——篩選對象集合 74
5.2.1 過濾函式列表 74
5.2.2 過濾函式要點 74
5.3 查找函式——找到目標對象 76
5.3.1 查找函式列表 77
5.3.2 查找函式要點 78
5.4 串聯函式——操作對象鏈 80
5.4.1 串聯函式列表 80
5.4.2 串聯函式要點 80
5.5 小結 82
第6章 使用jQuery操作元素 83
6.1 DOM屬性與HTML元素屬性 84
6.1.1 區分DOM屬性與HTML元素屬性 84
6.1.2 使用JavaScript操作DOM屬性 85
6.1.3 使用JavaScript操作HTML元素屬性 86
6.2 使用jQuery操作DOM 87
6.2.1 使用jQuery操作元素屬性 88
6.2.2 使用jQuery操作元素CSS 92
6.2.3 偏移量offset分類函式 96
6.2.4 用於測量的Dimensions分類函式 98
6.2.5 使用jQuery改變元素內容 100
6.3 小結 102
第7章 事件與事件對象 103
7.1 DOM事件模型 104
7.1.1 DOM事件流 104
7.1.2 事件處理函式 106
7.1.3 事件對象 107
7.2 jQuery事件模型 108
7.2.1 jQuery中的事件流 108
7.2.2 jQuery事件綁定函式 110
7.2.3 事件處理函式中的this指針 115
7.2.4 jQuery事件對象 116
7.3 jQuery特殊事件 122
7.3.1 對象監聽函式live和die 122
7.3.2 改進的滑鼠事件mouseenter、mouseleave和hover 124
7.3.3 改進的焦點事件focusin和focusout 126
7.4 小結 127
第8章 使用AJAX增加用戶體驗 128
8.1 原始AJAX與jQuery中的AJAX 129
8.1.1 原始AJAX套用舉例 129
8.1.2 jQuery中的AJAX快餐 130
8.2 使用jQuery的AJAX函式進行頁面互動 130
8.2.1 AJAX快捷函式 131
8.2.2 底層函式ajax()和ajaxSetup() 136
8.2.3 AJAX幫助函式 141
8.2.4 AJAX全局事件 145
8.3 跨域的AJAX-jsonp 146
8.3.1 什麼是JSONP 146
8.3.2 JSONP實現原理 148
8.3.3 JSONP在jQuery中的套用 148
8.4 小結 149
第9章 jQuery動畫——讓頁面動起來 150
9.1 jQuery動畫基礎 151
9.1.1 動畫入門實例 151
9.1.2 jQuery動畫分類 152
9.1.3 jQuery動畫實驗室 152
9.1.4 jQuery動畫時間參數 152
9.1.5 jQuery動畫回調函式 153
9.2 基礎動畫函式 153
9.2.1 基礎動畫實例 154
9.2.2 基礎動畫詳解 154
9.3 漸變動畫函式 155
9.3.1 漸變動畫實例 156
9.3.2 漸變動畫詳解 156
9.4 滑動動畫函式 157
9.4.1 滑動動畫實例 158
9.4.2 滑動動畫詳解 158
9.5 自定義動畫函式 158
9.5.1 jQuery佇列 159
9.5.2 動畫全局開關 161
9.5.3 停止元素動畫 162
9.5.4 自定義動畫效果 164
9.6 小結 168
第10章 jQuery工具函式 169
10.1 jQuery工具函式基礎 170
10.1.1 工具函式說明 170
10.1.2 jQuery工具函式概覽 170
10.2 瀏覽器特性檢測 171
10.2.1 瀏覽器特性檢測的演變 171
10.2.2 檢測瀏覽器類型和版本 172
10.2.3 瀏覽器特性檢測 174
10.3 數組和對象操作 176
10.3.1 遍歷數組和對象 178
10.3.2 過濾數組 178
10.3.3 數組和對象合併 179
10.3.4 數組和對象轉換 181
10.3.5 排序和過濾DOM元素集合 182
10.3.6 轉換JSON字元串 183
10.4 其他工具函式 184
10.4.1 字元串trim操作 184
10.4.2 判斷函式 184
10.4.3 jQuery中的全局eval函式 185
10.4.4 製造一個空函數 185
10.4.5 檢查結點包含關係 186
10.4.6 修改函式上下文 186
10.4.7 jQuery中的佇列函式 187
10.5 擴展jQuery工具函式 187
10.5.1 使用JavaScript擴展工具函式 187
10.5.2 使用jQuery.extend()函式擴展工具函式 188
10.6 小結 188
第11章 拿來主義——jQuery外掛程式 189
11.1 jQuery外掛程式基礎 190
11.1.1 jQuery外掛程式介紹 190
11.1.2 區別jQuery外掛程式與工具函式 190
11.1.3 尋找合適的jQuery外掛程式 191
11.1.4 合理使用jQuery外掛程式 191
11.2 jQuery外掛程式開發 191
11.2.1 為外掛程式起一個名字 192
11.2.2 編寫結構代碼 192
11.2.3 設計外掛程式參數 192
11.2.4 使用外掛程式 193
11.2.5 外掛程式開發要點 193
11.3 實戰表單驗證外掛程式 193
11.3.1 套用實例 194
11.3.2 驗證方法 196
11.3.3 驗證訊息 196
11.3.4 驗證規則 197
11.3.5 表單提交 198
11.3.6 DEBUG模式 198
11.3.7 多表單驗證 198
11.4 實戰自動完成外掛程式 198
11.4.1 套用實例 199
11.4.2 準備數據源 201
11.4.3 設定關鍵函式 201
11.4.4 為控制項添加Result事件函式 202
11.4.5 匹配中文 203
11.4.6 其他注意事項 203
11.5 小結 203
第12章 頁面的華麗外衣——jQuery UI 204
12.1 jQuery UI基礎 205
12.1.1 jQuery UI簡介 205
12.1.2 jQuery UI分類 206
12.2 Datepicker日曆控制項 207
12.2.1 套用實例 207
12.2.2 日曆框參數 211
12.2.3 日曆框事件 214
12.2.4 日曆框方法 215
12.3 Dialog對話框控制項 216
12.3.1 對話框套用場景 216
12.3.2 套用實例 217
12.3.3 計算對話框位置 221
12.3.4 取消冒泡和瀏覽器默認行為 221
12.3.5 設定動畫效果與取消動畫 221
12.3.6 動態提示類對話框的數據傳遞 222
12.3.7 更換主題 222
12.4 TAB標籤控制項 222
12.4.1 套用實例 222
12.4.2 注意HTML結構 224
12.4.3 活用事件 225
12.5 Accordion手風琴選單控制項 226
12.5.1 套用實例 226
12.5.2 關鍵點講解 229
12.6 Progressbar進度條控制項 230
12.6.1 套用實例 230
12.6.2 實例講解 231
12.7 Slider滑動條控制項 232
12.7.1 套用實例 232
12.7.2 實例講解 234
12.8 button按鈕控制項 234
12.8.1 套用實例 234
12.8.2 實例講解 237
12.9 autocomplete自動提示控制項 238
12.9.1 套用實例 238
12.9.2 實例講解 239
12.10 小結 241
第13章 基於jQuery打造腳本框架 242
13.1 頁面腳本管理 243
13.1.1 使用面向對象的方式管理頁面腳本 243
13.1.2 頁面腳本事件 245
13.1.3 切割腳本檔案 247
13.1.4 為腳本檔案添加智慧型提示 248
13.1.5 合併及壓縮腳本檔案 249
13.2 公共腳本類庫 250
13.2.1 template模板方法 250
13.2.2 修改函式上下文的方法 250
13.2.3 反序列化unparam()方法 251
13.2.4 操作Cookie的方法 252
13.2.5 JSON轉換方法 255
13.3 打造jQuery UI控制項庫 255
13.3.1 使用jQuery UI 255
13.3.2 自定義日曆控制項 258
13.4 小結 263
第14章 jQuery與百度地圖實戰 264
14.1 網站規劃 265
14.1.1 網站主題 265
14.1.2 用戶人群 265
14.1.3 盈利模式 265
14.1.4 未來規劃 265
14.2 網站實現 266
14.2.1 定義頁面結構 266
14.2.2 實現樣式 267
14.2.3 實現頁面功能 268
14.2.4 頁面重構 268
14.3 腳本詳解 269
14.3.1 百度地圖API介紹 269
14.3.2 使用百度地圖API 270
14.3.3 使用頁面腳本框架 271
14.3.4 使用jQuery UI 272
14.3.5 本地搜尋 273
14.3.6 公交和駕車搜尋 275
14.4 小結 277
第15章 移動腳本框架jQuery Mobile 278
15.1 jQuery Mobile介紹 279
15.1.1 jQuery Mobile的目的 279
15.1.2 jQuery Mobile瀏覽器兼容性 279
15.1.3 jQuery Mobile特性 280
15.2 jQuery Mobile入門 280
15.2.1 Hello Mobile實例 281
15.2.2 API分類 282
15.2.3 頁面結構 283
15.2.4 配置系統 285
15.2.5 事件處理 286
15.3 jQuery Mobile與百度地圖API綜合實例 287
15.3.1 實例效果 287
15.3.2 定製頁腳 288
15.3.3 組織頁面腳本 289
15.3.4 添加事件 289
15.4 小結 290