JavaScript完全解析

JavaScript完全解析

《JavaScript完全解析》從JavaScript基本語法開始,逐一講解了JavaScript中的各種常見特性,同時詳細介紹了調試方法及Ajax等新技術。《JavaScript完全解析》將指出使用JavaScript的正確方法,並通過講解在專業網站中得以充分套用的實例,使讀者不僅能夠編寫JavaScript代碼,而且有能力理解別人編寫的代碼,甚至能夠從以前的程式中發現有害的、弊大於利的代碼段。

基本信息

作者簡介

KevinYank是Web開發領域中著名的領軍人物。在寫書之前是SitePoint網站的技術總監,同時也是SitePointTechTimes時事通訊的主編。
CameronAdams是許多Web開發書籍的作者,是著名的“Web技術專家”,他不僅具有豐富的JavaScript經驗,還對CSS、PHP和圖形設計十分精通。

編輯推薦

《JavaScript完全解析》通過豐富多彩的示例,一步步地教你以正確的方式進行JavaScnpt編程。你將輕鬆學會使用JavaScript解決實際的問題、構建更精妙的表單、追蹤用戶事件(諸如點擊滑鼠和按鍵)、設計出精彩的動畫等知識,還將學習使用DOM、Ajax等功能更強大的技術。學習JavaScript~置的函式、方法和屬性;輕鬆掌握將JavaScript集成到網站中的方法:學習基於JavaScript的表單驗證及用戶互動方法:理解如何處理用戶事件:創建使網站更有生命力的動畫:學會基於DOM和Ajax的編程。

序言

從表面上看,JavaScript是一門簡單的程式設計語言,它可以在瀏覽器顯示網頁的同時對網頁進行實時修改。掌握它到底有多難呢?聽起來好像是一個下午就可以解決的事情一樣。
但是JavaScript的實質要比其表象複雜得多。如果你是Dr.Who的冬粉,那么就可能將JavaScript稱為Tardis式的程式設計語言’。如果不是,那么就像年輕的男女極客一樣,目不轉睛地跟著我一起來學習吧!
所有人都跟過來了嗎?Jimmy,放下你手中的機器人Daleks吧。
正如前面所講,JavaScript聽起來應該是一門簡單的程式設計語言。然而,在它10年的發展歷程中,使用JavaScript的最佳方式似乎也隨著時間的變化而變化;並且到處都可以看到關於如何編寫優質JavaScript代碼的建議,如“按照這種方式吧,它將運行得更快”、“用這段代碼吧,它可以在更多的瀏覽器中正常運行”、“遠離這個特性吧,它將引起記憶體泄漏”等。
有很多JavaScript書籍(其中一部分書籍的作者在業界非常受人尊敬)只教了一些解決簡單問題的簡單方法。於是到目前為止,當這些讀者需要獨自解決一個實際問題的時候,仍然會感覺到無從下手。當他們花費九牛二虎之力從網頁上搜尋到一個所需的實例時,卻無法理解這些JavaScript代碼的含義。這是因為讀者所購買的書沒有包含這門語言中多數真正有用的特徵,如對象字面量(obiectliterals)、事件監聽器(eventlisteners)以及閉包。

目錄

第1章 Web的三層結構 1
1.1 頁面分離 2
1.2 三層結構 3
1.2.1 用HTML設定內容 4
1.2.2 用CSS描述頁面展現效果 6
1.2.3 用JavaScript實現行為 7
1.3 正確的方法 7
1.4 JavaScript程式庫 8
1.5 讓我們開始吧 9
第2章 JavaScript編程 10
2.1 運行JavaScript程式 10
2.2 語句:給瀏覽器看的最小程式塊 13
2.3 注釋:給程式設計師看的最小程式塊 13
2.4 變數:為程式存儲數據 14
2.5 條件和循環:控制程式流 23
2.5.1 條件:做出選擇 24
2.5.2 循環:使重複代碼最少化 29
2.6 函式:編寫後續將使用的代碼 33
2.6.1 參數:向函式傳遞數據 33
2.6.2 返回語句:函式的數據輸出 35
2.6.3 作用域:保持變數相互獨立 36
2.7 對象 37
2.8 實際套用中的低調腳本 39
2.9 小結 40
第3章 文檔訪問 41
3.1 文檔對象模型:對HTML的映射 41
3.1.1 文本節點 43
3.1.2 屬性節點 44
3.2 訪問所需的節點 45
3.2.1 通過ID屬性查找元素 45
3.2.2 通過標籤名稱查找元素 47
3.2.3 通過類名查找元素 50
3.2.4 遍歷DOM樹 53
3.2.5 操作元素屬性 56
3.3 更改樣式 57
3.4 實例:建立帶底紋的表格 62
3.4.1 查找所有類名為dataTable的表格 63
3.4.2 獲取每個表格的行 63
3.4.3 為偶數行添加類alt 65
3.4.4 合併全部代碼 65
3.5 程式庫簡介 67
3.5.1 Prototype程式庫 67
3.5.2 jQuery程式庫 68
3.5.3 Dojo程式庫 69
3.6 小結 70
第4章 事件 71
4.1 重要的歷史 71
4.2 事件句柄 72
4.2.1 默認操作 75
4.2.2 this關鍵字 76
4.2.3 事件句柄中存在的問題 78
4.3 事件監聽器 79
4.3.1 默認行為 81
4.3.2 事件傳送 83
4.3.3 this關鍵字 86
4.3.4 IE的記憶體泄漏問題 88
4.3.5 合併全部代碼 88
4.4 實例:富提示條 90
4.4.1 靜態頁面 91
4.4.2 生成提示條 91
4.4.3 核心方法 93
4.4.4 動態樣式 96
4.4.5 合併全部代碼 97
4.5 實例:摺疊選單 98
4.5.1 靜態頁面 99
4.5.2 核心方法 100
4.5.3 動態樣式 102
4.5.4 合併全部代碼 103
4.6 程式庫簡介 109
4.7 小結 110
第5章 動畫 111
5.1 動畫原理 111
5.2 用JavaScript控制時間 112
5.2.1 在setTimeout函式中使用變數 115
5.2.2 停止計時器 117
5.2.3 建立重複計時器 118
5.2.4 停止重複計時器 119
5.3 再談富提示條 119
5.4 用新風格實現老式動畫 120
5.5 基於路徑的運動 124
5.5.1 二維空間內的動畫效果 130
5.5.2 創建更真實的運動效果 132
5.5.3 進一步學習 136
5.6 再談摺疊選單 136
5.6.1 如何為摺疊選單添加動畫效果 136
5.6.2 代碼修改 137
5.7 程式庫簡介 143
5.8 小結 145
第6章 表單增強 146
6.1 HTML DOM擴展 147
6.1.1 實例:創建關聯的表單域 148
6.1.2 實例:級聯選單 156
6.2 表單驗證 165
6.2.1 截獲表單提交 166
6.2.2 正則表達式 167
6.2.3 實例:可復用的驗證腳本 171
6.3 自定義表單控制項 175
6.4 程式庫簡介 186
6.4.1 表單驗證 187
6.4.2 自定義控制項 188
6.5 小結 189
第7章 錯誤和調試 190
7.1 什麼也沒有發生 191
7.2 常見錯誤 195
7.2.1 語法錯誤 195
7.2.2 運行錯誤 199
7.2.3 邏輯錯誤 201
7.3 用FireBug調試 204
7.4 小結 209
第8章 Ajax 210
8.1 XMLHttpRequest:處理小內容塊 210
8.1.1 創建XMLHttpRequest對象 211
8.1.2 訪問伺服器 213
8.1.3 數據處理 216
8.2 關於螢幕閱讀器 217
8.3 Ajax實戰 218
8.4 基於Ajax的無縫表單提交 227
8.5 程式庫簡介 234
8.5.1 Prototype 235
8.5.2 Dojo 236
8.5.3 jQuery 236
8.5.4 YUI 237
8.5.5 MooTools 237
8.6 小結 238
第9章 展望 239
9.1 使Web變得更加豐富多彩 240
9.1.1 更簡單的瀏覽方式 240
9.1.2 更好的視覺效果 241
9.1.3 獨特的互動機制 242
9.2 富網際網路套用 244
9.3 擺脫網頁的JavaScript 247
9.4 程式庫簡介 248
9.4.1 Dojo 249
9.4.2 GOOGLE WEB TOOLKIT 251
9.5 小結 251
附錄A JavaScript核心程式庫 253
A.1 對象 253
A.2 事件監聽器方法 254
A.3 腳本啟動 262
A.4 CSS類管理方法 264
A.5 獲取派生的樣式 265
A.6 完整的程式庫 265

相關詞條

相關搜尋

熱門詞條

聯絡我們