Jeremy Keith 國際知名的Web設計師,Web標準項目組成員,DOM Scripting任務組負責人之一,任職於Web谘詢公司Clearleft。除本書外,還著有HTML5 for Web Designers、Bulletproof Ajax。可通過其個人網站adactio.com與他聯係。
Jeffrey Sambells 資深平麵設計師,Web開發人員,創辦瞭軟件公司We-Create並擔任研發總監。除本書外,還著有《JavaScript高級程序設計》和 Beginning Google Maps Applications with PHP and Ajax等多部暢銷書。
第1章 JavaScript簡史 1
1.1 JavaScript的起源 1
1.2 DOM 2
1.3 瀏覽器戰爭 3
1.3.1 DHTML 3
1.3.2 瀏覽器之間的衝突 3
1.4 製定標準 4
1.4.1 瀏覽器以外的考慮 4
1.4.2 瀏覽器戰爭的結局 5
1.4.3 嶄新的起點 5
1.5 小結 6
第2章 JavaScript語法 8
2.1 準備工作 8
2.2 語法 10
2.2.1 語句 10
2.2.2 注釋 10
2.2.3 變量 11
2.2.4 數據類型 14
2.2.5 數組 16
2.2.6 對象 18
2.3 操作 19
2.4 條件語句 21
2.4.1 比較操作符 22
2.4.2 邏輯操作符 23
2.5 循環語句 24
2.5.1 while循環 24
2.5.2 for循環 25
2.6 函數 26
2.7 對象 29
2.7.1 內建對象 30
2.7.2 宿主對象 31
2.8 小結 31
第3章 DOM 32
3.1 文檔:DOM中的“D” 32
3.2 對象:DOM中的“O” 32
3.3 模型:DOM中的“M” 33
3.4 節點 35
3.4.1 元素節點 35
3.4.2 文本節點 35
3.4.3 屬性節點 36
3.4.4 CSS 36
3.4.5 獲取元素 38
3.4.6 盤點知識點 42
3.5 獲取和設置屬性 43
3.5.1 getAttribute 43
3.5.2 setAttribute 44
3.6 小結 45
第4章 案例研究:JavaScript圖片庫 46
4.1 標記 46
4.2 JavaScript 48
4.2.1 非DOM解決方案 49
4.2.2 最終的函數代碼清單 50
4.3 應用這個JavaScript函數 50
4.4 對這個函數進行擴展 52
4.4.1 childNodes屬性 53
4.4.2 nodeType屬性 54
4.4.3 在標記裏增加一段描述 54
4.4.4 用JavaScript改變這段描述 55
4.4.5 nodeValue屬性 56
4.4.6 firstChild和lastChild屬性 56
4.4.7 利用nodeValue屬性刷新這段描述 57
4.5 小結 60
第5章 最佳實踐 61
5.1 過去的錯誤 61
5.1.1 不要怪罪JavaScript 61
5.1.2 Flash的遭遇 62
5.1.3 質疑一切 63
5.2 平穩退化 63
5.2.1 “javascript:”僞協議 64
5.2.2 內嵌的事件處理函數 65
5.2.3 誰關心這個 65
5.3 嚮CSS學習 66
5.3.1 結構與樣式的分離 66
5.3.2 漸進增強 67
5.4 分離JavaScript 68
5.5 嚮後兼容 70
5.5.1 對象檢測 70
5.5.2 瀏覽器嗅探技術 71
5.6 性能考慮 72
5.6.1 盡量少訪問DOM和盡量減少標記 72
5.6.2 閤並和放置腳本 73
5.6.3 壓縮腳本 73
5.7 小結 74
第6章 案例研究:圖片庫改進版 75
6.1 快速迴顧 75
6.2 它支持平穩退化嗎 76
6.3 它的JavaScript與HTML標記是分離的嗎 77
6.3.1 添加事件處理函數 77
6.3.2 共享onload事件 82
6.4 不要做太多的假設 84
6.5 優化 86
6.6 鍵盤訪問 88
6.7 把JavaScript與CSS結閤起來 90
6.8 DOM Core和HTML-DOM 93
6.9 小結 94
第7章 動態創建標記 96
7.1 一些傳統方法 96
7.1.1 document.write 96
7.1.2 innerHTML屬性 98
7.2 DOM方法 101
7.2.1 createElement方法 101
7.2.2 appendChild方法 102
7.2.3 createTextNode方法 103
7.2.4 一個更復雜的組閤 105
7.3 重迴圖片庫 107
7.3.1 在已有元素前插入一個新元素 108
7.3.2 在現有方法後插入一個新元素 109
7.3.3 圖片庫二次改進版 111
7.4 Ajax 114
7.4.1 XMLHttpRequest對象 115
7.4.2 漸進增強與Ajax 119
7.4.3 Hijax 120
7.5 小結 121
第8章 充實文檔的內容 122
8.1 不應該做什麼 122
8.2 把“不可見”變成“可見” 123
8.3 內容 123
8.3.1 選用HTML、XHTML還是HTML5 124
8.3.2 CSS 126
8.3.3 JavaScript 127
8.4 顯示“縮略語列錶” 127
8.4.1 編寫displayAbbreviations函數 128
8.4.2 創建標記 130
8.4.3 一個瀏覽器“地雷” 135
8.5 顯示“文獻來源鏈接錶” 138
8.6 顯示“快捷鍵清單” 143
8.7 檢索和添加信息 146
8.8 小結 147
第9章 CSS-DOM 148
9.1 三位一體的網頁 148
9.1.1 結構層 148
9.1.2 錶示層 148
9.1.3 行為層 149
9.1.4 分離 150
9.2 style屬性 150
9.2.1 獲取樣式 151
9.2.2 設置樣式 156
9.3 何時該用DOM腳本設置樣式 158
9.3.1 根據元素在節點樹裏的位置來設置樣式 158
9.3.2 根據某種條件反復設置某種樣式 161
9.3.3 響應事件 165
9.4 className屬性 167
9.5 小結 171
第10章 用JavaScript實現動畫效果 172
10.1 動畫基礎知識 172
10.1.1 位置 172
10.1.2 時間 175
10.1.3 時間遞增量 175
10.1.4 抽象 178
10.2 實用的動畫 184
10.2.1 提齣問題 184
10.2.2 解決問題 186
10.2.3 CSS 187
10.2.4 JavaScript 189
10.2.5 變量作用域問題 192
10.2.6 改進動畫效果 193
10.2.7 添加安全檢查 196
10.2.8 生成HTML標記 198
10.3 小結 200
第11章 HTML5 201
11.1 HTML5簡介 201
11.2 來自朋友的忠告 203
11.3 幾個示例 204
11.3.1 Canvas 205
11.3.2 音頻和視頻 209
11.3.3 錶單 215
11.4 HTML5還有其他特性嗎 219
11.5 小結 219
第12章 綜閤示例 220
12.1 項目簡介 220
12.1.1 原始資料 220
12.1.2 站點結構 220
12.1.3 頁麵結構 221
12.2 設計 222
12.3 CSS 223
12.3.1 顔色 225
12.3.2 布局 226
12.3.3 版式 228
12.4 標記 229
12.5 JavaScript 230
12.5.1 頁麵突齣顯示 231
12.5.2 JavaScript幻燈片 235
12.5.3 內部導航 239
12.5.4 JavaScript圖片庫 242
12.5.5 增強錶格 245
12.5.6 增強錶單 249
12.5.7 壓縮代碼 263
12.6 小結 264
附錄 JavaScript庫 265
· · · · · · (
收起)
JavaScript是Web開發中最重要的一門語言,它強大而優美。無論是桌麵開發,還是移動應用。JavaScript都是必須掌握的技術。W3C的DOM標準是開發Web應用的基石。已經得到所有現代瀏覽器的支持,這使得跨平颱Web開發成瞭一件輕鬆愜意的事。
本書是超級暢銷書的升級版,由倡導Web標準的領軍人物執筆,揭示瞭前端開發的真諦,是學習JavaScript和DOM開發的必讀之作。
本 書在簡潔明快地講述JavaScript和DOM的基本知識之後,通過幾個實例演示瞭專業水準的網頁開發技術,透徹闡述瞭平穩退化等一批至關重要的 JavaScript編程原則和最佳實踐,並全麵探討瞭HTML5以及jQuery等JavaScript庫。讀者將看到JavaScript、 HTML5和CSS如何協作來創建易用的、與標準兼容的Web設計,掌握使用JavaScript和DOM通過客戶端動態效果和用戶控製的動畫來加強 Web頁麵的必備技術;同時,還將對如何利用庫提高開發效率有全麵深入的理解。