Dori Smith,世界知名的Web程序員和設(shè)計(jì)師,從事軟件開發(fā)已有20多年。她是Web標(biāo)準(zhǔn)項(xiàng)目(WaSP)指導(dǎo)委員會(huì)委員,并發(fā)起成立了世界性的女性技術(shù)社區(qū)Wise-Women Web。
Tom Negrino,蜚聲全球的技術(shù)作家,長期主持Macworld和許多其他技術(shù)雜志的專欄。自1995年開始,與Dori Smith合作著書,向初學(xué)者介紹Web,目前已著有數(shù)十本書。
第1章 了解JavaScript 1
1.1 JavaScript是什么 1
1.2 JavaScript不是Java 2
1.3 JavaScript的起源 3
1.4 JavaScript可以做什么 3
1.5 JavaScript不能做什么 4
1.6 JavaScript及其他 4
1.6.1 jQuery是什么 4
1.6.2 Ajax是什么 4
1.7 組合式語言 6
1.7.1 對象 6
1.7.2 屬性 6
1.7.3 方法 7
1.7.4 將對象、屬性和方法組合在一起 7
1.7.5 DOM簡介 7
1.8 處理事件 8
1.9 值和變量 8
1.9.1 操作符 9
1.9.2 賦值和比較 9
1.9.3 比較 10
1.10 編寫對JavaScript友好的HTML 10
1.10.1 結(jié)構(gòu)、表現(xiàn)和行為 11
1.10.2 div和span 11
1.10.3 class和id 11
1.11 要使用什么工具 12
第2章 開始 14
2.1 將腳本放在哪里 14
2.2 關(guān)于函數(shù) 15
2.3 使用外部腳本 16
2.4 在腳本中添加注釋 17
2.5 向用戶發(fā)出警告 18
2.6 確認(rèn)用戶的選擇 20
2.7 提示用戶 21
2.8 用鏈接對用戶進(jìn)行重定向 23
2.9 使用JavaScript改進(jìn)鏈接 25
2.10 使用多級條件 28
2.11 處理錯(cuò)誤 31
第3章 第一個(gè)Web應(yīng)用程序 33
3.1 用循環(huán)進(jìn)行重復(fù)操作 33
3.2 將值傳遞給函數(shù) 38
3.3 探測對象 39
3.4 處理數(shù)組 41
3.5 處理有返回值的函數(shù) 42
3.6 更新數(shù)組 43
3.7 使用do/while循環(huán) 45
3.8 以多種方式調(diào)用腳本 46
3.9 組合使用JavaScript和CSS 48
3.10 檢查狀態(tài) 51
3.11 處理字符串?dāng)?shù)組 56
第4章 處理圖像 60
4.1 創(chuàng)建翻轉(zhuǎn)器 60
4.2 創(chuàng)建更有效的翻轉(zhuǎn)器 62
4.3 構(gòu)建三狀態(tài)翻轉(zhuǎn)器 66
4.4 由鏈接觸發(fā)翻轉(zhuǎn)器 67
4.5 讓多個(gè)鏈接觸發(fā)一個(gè)翻轉(zhuǎn)器 69
4.6 處理多個(gè)翻轉(zhuǎn)器 72
4.7 創(chuàng)建循環(huán)的廣告條 75
4.8 在循環(huán)廣告條中添加鏈接 77
4.9 建立循環(huán)式幻燈片 79
4.10 顯示隨機(jī)圖像 81
4.11 隨機(jī)開始循環(huán)顯示圖像 82
第5章 窗口與框架 84
5.1 防止頁面顯示在框架中 84
5.2 設(shè)置目標(biāo) 85
5.3 用JavaScript加載iframe 87
5.4 iframe的使用 88
5.5 創(chuàng)建動(dòng)態(tài)iframe 90
5.6 在文檔之間共享函數(shù) 91
5.7 打開新窗口 93
5.8 為窗口加載不同的內(nèi)容 96
第6章 表單處理 98
6.1 選擇并轉(zhuǎn)移導(dǎo)航菜單 99
6.2 動(dòng)態(tài)地改變菜單 102
6.3 建立必須填寫的字段 104
6.4 根據(jù)其他字段對字段進(jìn)行檢查 108
6.5 標(biāo)識(shí)有問題的字段 110
6.6 準(zhǔn)備進(jìn)行表單驗(yàn)證 112
6.7 處理單選按鈕 116
6.8 用一個(gè)字段設(shè)置另一個(gè)字段 119
6.9 檢驗(yàn)Zip編碼 121
6.10 驗(yàn)證電子郵件地址 125
第7章 表單和正則表達(dá)式 130
7.1 用正則表達(dá)式驗(yàn)證電子郵件地址 130
7.2 驗(yàn)證文件名 135
7.3 提取字符串 137
7.4 格式化字符串 139
7.5 對字符串進(jìn)行格式化和排序 142
7.6 對字符串進(jìn)行格式化和驗(yàn)證 143
7.7 使用正則表達(dá)式替換元素 146
第8章 處理事件 148
8.1 處理窗口事件 148
8.1.1 onload事件 148
8.1.2 onunload事件 151
8.1.3 onbeforeunload事件 151
8.1.4 onresize事件 153
8.1.5 onmove事件 153
8.1.6 onabort事件 153
8.1.7 onerror事件 153
8.1.8 onfocus事件和onblur事件 153
8.1.9 onscroll事件 153
8.1.10 onDOMContentLoaded事件 153
8.2 處理鼠標(biāo)事件 153
8.2.1 onmousedown事件 154
8.2.2 onmouseup事件 156
8.2.3 onmousemove事件 156
8.2.4 onmouseover事件 159
8.2.5 onmouseout事件 159
8.2.6 ondblclick事件 159
8.2.7 onclick事件 160
8.3 表單事件處理 160
8.3.1 onsubmit事件 160
8.3.2 onreset事件 161
8.3.3 onchange事件 161
8.3.4 onselect事件 161
8.3.5 onclick事件 161
8.3.6 onblur事件 161
8.3.7 onfocus事件 163
8.4 鍵事件處理 164
8.4.1 onkeydown事件 164
8.4.2 onkeyup事件 167
8.4.3 onkeypress事件 167
8.5 高級事件處理 167
8.5.1 addEventListener方法 167
8.5.2 removeEventListener方法 169
8.5.3 dispatchEvent方法 169
8.5.4 initEvent方法 169
8.5.5 stopPropagation方法 169
8.5.6 preventDefault方法 169
第9章 JavaScript和cookie 171
9.1 建立第一個(gè)cookie 171
9.2 讀取cookie 174
9.3 顯示cookie 175
9.4 使用cookie作為計(jì)數(shù)器 176
9.5 刪除cookie 178
9.6 處理多個(gè)cookie 180
9.7 顯示新內(nèi)容提醒信息 182
第10章 對象和DOM 186
10.1 關(guān)于節(jié)點(diǎn)操縱 186
10.1.1 DOM 2和W3C 186
10.1.2 DOM 2術(shù)語 186
10.1.3 DOM 3 187
10.2 添加節(jié)點(diǎn) 187
10.3 刪除節(jié)點(diǎn) 189
10.4 刪除特定的節(jié)點(diǎn) 191
10.5 插入節(jié)點(diǎn) 194
10.6 替換節(jié)點(diǎn) 196
10.7 用對象字面量編寫代碼 199
第11章 建立動(dòng)態(tài)頁面 204
11.1 在網(wǎng)頁上顯示當(dāng)前日期 204
11.2 處理周中的日期 206
11.3 根據(jù)時(shí)間對消息進(jìn)行定制 207
11.4 根據(jù)時(shí)區(qū)顯示日期 208
11.5 把24小時(shí)制轉(zhuǎn)換為12小時(shí)制 211
11.6 創(chuàng)建倒數(shù)計(jì)數(shù)器 214
11.7 隱藏和顯示層 217
11.8 移動(dòng)文檔中的對象 220
11.9 日期方法 221
第12章 JavaScript應(yīng)用示例 223
12.1 使用可折疊菜單 223
12.2 添加下拉菜單 226
12.3 改進(jìn)下拉菜單 229
12.4 帶說明的幻燈片 232
12.5 一個(gè)娛樂姓名生成器 235
12.6 柱狀圖生成器 239
12.7 樣式表切換器 246
第13章 Ajax簡介 254
13.1 Ajax的定義 254
13.2 讀取服務(wù)器數(shù)據(jù) 256
13.3 解析服務(wù)器數(shù)據(jù) 263
13.4 刷新服務(wù)器數(shù)據(jù) 268
13.5 從服務(wù)器獲得數(shù)據(jù) 270
13.6 用Ajax預(yù)覽鏈接 273
13.7 自動(dòng)補(bǔ)全表單字段 276
13.8 檢查文件是否存在 281
第14章 工具包、框架和庫 285
14.1 添加jQuery 286
14.2 使用jQuery更新頁面 288
14.3 使用jQuery交互 288
14.4 交互與更新 291
14.5 條紋表格 292
14.6 表格排序 296
第15章 用jQuery設(shè)計(jì)頁面 301
15.1 突出顯示新元素 301
15.2 創(chuàng)建可折疊菜單 303
15.3 創(chuàng)建更漂亮的對話框 306
15.4 自動(dòng)完成字段 309
15.5 添加可排序選項(xiàng)卡 311
15.6 使用復(fù)選框作為按鈕 313
15.7 在頁面中添加日歷 316
15.8 使用ThemeRoller定制外觀 320
第16章 基于jQuery的應(yīng)用 323
16.1 以jQuery為基礎(chǔ) 323
16.1.1 Ajax、JSON和jQuery 323
16.1.2 jQuery插件 324
16.2 拖放元素 324
16.3 使用jQuery處理外部數(shù)據(jù) 327
16.4 使用jQuery插件 329
16.5 添加jQuery音頻插件 333
第17章 為移動(dòng)設(shè)備編寫腳本 335
17.1 改變方向 335
17.2 處理觸摸事件 342
17.3 針對不同設(shè)備編寫特定代碼 344
17.4 定位設(shè)備 346
第18章 bookmarklet 349
18.1 第一個(gè)bookmarklet 349
18.2 改變頁面的背景顏色 353
18.3 改變頁面樣式 354
18.4 查詢單詞 355
18.5 查看圖像 357
18.6 顯示ISO Latin字符 359
18.7 將RGB值轉(zhuǎn)換為十六進(jìn)制 360
18.8 對值進(jìn)行轉(zhuǎn)換 362
18.9 bookmarklet計(jì)算器 362
18.10 縮短URL 364
18.11 檢驗(yàn)頁面 364
18.12 通過電子郵件發(fā)送頁面 365
18.13 改變頁面大小 366
附錄A JavaScript的版本演化和參考資料 368
附錄B JavaScript保留字 386
附錄C CSS參考 389
附錄D 其他學(xué)習(xí)資源 398