第一部分 Web腳本編寫與JavaScript語言的概念
第1章 瞭解JavaScript
1.1 學習Web腳本編寫基礎
1.1.1 腳本和程序
1.1.2 JavaScript簡介
1.2 在網頁中如何嵌入JavaScript
1.2.1 JavaScript和HTML
1.2.2 使用單獨的JavaScript文件
1.2.3 事件
1.3 瀏覽器和JavaScript
1.3.1 文檔對象模型(DOM)
1.3.2 Internet Explorer
1.3.3 Netscape和Firefox
1.3.4 其他瀏覽器
1.3.5 JavaScript的版本
1.4 指定JavaScript的版本
1.5 JavaScript在瀏覽器之外的應用
1.6 JavaScript功能一覽
1.6.1 改善導航功能
1.6.2 驗證錶單
1.6.3 特殊效果
1.6.4 AJAX
1.7 JavaScript的替代技術
1.7.1 Java
1.7.2 ActiveX
1.7.3 VBScript
1.7.4 CGI和服務器端腳本技術
1.8 小結
1.9 問題與解答
1.10 測試題
1.11 測試題答案
1.12 練習題
第2章 創建簡單的腳本
2.1 腳本編寫的工具
2.1.1 文本編輯器
2.1.2 瀏覽器
2.2 在JavaScript中顯示時間
2.3 開始編寫腳本
2.4 添加JavaScript語句
2.4.1 在變量中存儲數據
2.4.2 計算結果
2.5 創建輸齣
2.6 在網頁中添加腳本
2.7 測試腳本
2.7.1 修改腳本
2.7.2 處理JavaScript中的錯誤
2.8 實踐練習:使用一個單獨的JavaScript文件
2.9 小結
2.10 問題與解答
2.11 測試題
2.12 測試題答案
2.13 練習題
第3章 開始JavaScript編程
3.1 基本概念
3.1.1 語句
3.1.2 用函數來組閤任務
3.1.3 變量
3.1.4 理解對象
3.1.5 條件語句
3.1.6 循環語句
3.1.7 事件處理程序
3.1.8 最先運行哪個腳本
3.2 JavaScript語法規則
3.2.1 區分大小寫
3.2.2 變量、對象和函數的名稱
3.2.3 保留字
3.2.4 空格
3.3 使用注釋
3.4 編寫JavaScript的好習慣
3.5 實踐練習:使用事件處理程序
3.6 小結
3.7 問題與解答
3.8 測試題
3.9 測試題答案
3.10 練習題
第4章 使用文檔對象模型(DOM)
4.1 認識文檔對象模型
4.1.1 DOM的曆史
4.1.2 DOM的分級標準
4.2 使用window對象
4.3 處理Web文檔
4.3.1 獲得文檔的信息
4.3.2 在文檔中寫入文字
4.3.3 使用link和anchor對象
4.4 訪問瀏覽器的history對象
4.5 使用location對象
4.6 實踐練習:創建“後退”和“前進”按鈕
4.7 小結
4.8 問題與解答
4.9 測試題
4.10 測試題答案
4.11 練習題
第二部分 學習JavaScript基礎
第5章 使用變量、字符串和數組
5.1 使用變量
5.1.1 選擇變量名稱
5.1.2 使用局部變量和全局變量
5.1.3 給變量賦值
5.2 理解錶達式和運算符
5.2.1 使用JavaScript運算符
5.2.2 運算符的優先級
5.3 JavaScript的數據類型
5.4 數據類型之間的轉換
5.5 使用String對象
5.5.1 創建String對象
5.5.2 給變量賦值
5.5.3 計算字符串長度
5.5.4 字符串大小寫轉換
5.6 使用子字符串
5.6.1 使用字符串的一部分
5.6.2 獲取單個字符
5.6.3 查找子字符串
5.7 使用數值數組
5.7.1 創建數值數組
5.7.2 理解數組的長度
5.7.3 存取數組元素
5.8 使用字符串數組
5.8.1 建立字符串數組
5.8.2 分離字符串
5.8.3 字符串數組的排序
5.9 數值數組的排序
5.10 實踐練習:排序並顯示名字
5.11 小結
5.12 問題與解答
5.13 測試題
5.14 測試題答案
5.15 練習題
第6章 使用函數和對象
6.1 使用函數
6.1.1 定義函數
6.1.2 調用函數
6.1.3 返迴值
6.2 對象簡介
6.2.1 創建對象
6.2.2 對象屬性和值
6.2.3 瞭解方法
6.3 使用對象來簡化腳本
6.3.1 定義對象
6.3.2 定義對象的方法
6.3.3 創建對象實例
6.4 擴展內置對象
6.5 實踐練習:使用對象保存數據
6.6 小結
6.7 問題與解答
6.8 測試題
6.9 測試題答案
6.10 練習題
第7章 用條件和循環控製流程
7.1 if語句
7.1.1 條件運算符
7.1.2 條件與邏輯運算符
7.1.3 關鍵字else
7.2 使用簡寫的條件錶達式
7.2.1 用if和else測試多種條件
7.2.2 使用帶switch的多個條件
7.2.3 使用for循環
7.2.4 使用while循環
7.2.5 使用do…while循環
7.3 使用循環
7.3.1 創建無窮循環
7.3.2 退齣循環
7.3.3 繼續循環
7.4 循環遍曆對象屬性
7.5 實踐練習:處理數組和循環
7.6 小結
7.7 問題與解答
7.8 測試題
7.9 測試題答案
7.10 練習題
第8章 使用內置函數和程序庫
8.1 使用Math對象
8.1.1 捨入和截取
8.1.2 生成隨機數
8.1.3 其他Math函數
8.2 使用Math函數
8.3 使用with關鍵字
8.4 使用日期
8.4.1 創建Date對象
8.4.2 設置Date的值
8.4.3 讀取Date的值
8.4.4 使用時區
8.4.5 日期格式的轉換
8.5 使用第三方程序庫
8.5.1 Prototype
8.5.2 Script.aculo.us
8.5.3 AJAX框架
8.6 其他程序庫
8.7 實踐練習:用程序庫增添效果
8.7.1 下載程序庫
8.7.2 包含文件
8.7.3 使用效果
8.7.4 構建腳本
8.8 小結
8.9 問題與解答
8.10 測試題
8.11 測試題答案
8.12 練習題
第三部分 深入學習DOM
第9章 事件響應
9.1 認識事件處理程序
9.1.1 對象與事件
9.1.2 創建事件處理程序
9.1.3 使用JavaScript定義事件處理程序
9.1.4 支持多個事件處理程序
9.1.5 使用event對象
9.1.6 Internet Explorer的event屬性
9.1.7 Netscape和Firefox的event屬性
9.2 使用鼠標事件
9.2.1 移至和移開
9.2.2 使用onMouseMove事件
9.2.3 常態和按下(以及單擊)
9.3 使用鍵盤事件
9.4 使用onLoad和onUnload事件
9.5 實踐練習:為網頁添加鏈接說明
9.6 小結
9.7 問題與解答
9.8 測試題
9.9 測試題答案
9.10 練習題
第10章 使用窗口和框架
10.1 用對象控製窗口
10.1.1 window對象的屬性
10.1.2 創建新窗口
10.1.3 打開和關閉窗口
10.2 移動和調整窗口大小
10.3 使用超時功能
10.4 顯示對話框
10.5 使用框架
10.5.1 為框架使用JavaScript對象
10.5.2 frames數組
10.6 實踐練習:在JavaScript中使用框架
10.7 小結
10.8 問題與解答
10.9 測試題
10.10 測試題答案
10.11 練習題
第11章 利用錶單獲取數據
11.1 HTML錶單基礎
11.2 在JavaScript中使用form對象
11.2.1 form對象的屬性
11.2.2 提交和重置錶單
11.2.3 檢測錶單事件
11.3 編製錶單元素的腳本
11.3.1 文本字段
11.3.2 文本區域
11.3.3 處理錶單中的文本
11.3.4 按鈕
11.3.5 復選框
11.3.6 單選按鈕
11.3.7 下拉列錶
11.4 顯示錶單數據
11.5 通過郵件發送錶單結果
11.6 實踐練習:驗證錶單
11.7 小結
11.8 問題與解答
11.9 測試題
11.10 測試題答案
11.11 練習題
第12章 使用樣式錶
12.1 樣式與內容
12.2 定義和使用CSS樣式
12.2.1 創建規則
12.2.2 設置指定元素的樣式
12.2.3 使用id屬性
12.2.4 使用類
12.3 使用CSS屬性
12.3.1 文本對齊
12.3.2 改變顔色和背景圖像
12.3.3 使用字體
12.3.4 邊距和邊框
12.3.5 樣式錶的單位
12.4 創建一個簡單的樣式錶
12.5 使用外部樣式錶
12.5.1 鏈接外部樣式錶
12.5.2 創建外部.css文件
12.6 用JavaScript控製樣式
12.7 實踐練習:創建動態樣式
12.8 小結
12.9 問題與解答
12.10 測試題
12.11 測試題答案
12.12 練習題
第13章 使用W3C的DOM
13.1 DOM和動態HTML
13.2 理解DOM結構
13.2.1 節點
13.2.2 父與子
13.2.3 兄弟
13.3 創建可定位元素(層)
13.3.1 設置對象的位置和大小
13.3.2 設定溢齣屬性
13.3.3 使用可見性屬性
13.3.4 設置背景和邊框屬性
13.3.5 用JavaScript控製定位
13.4 實踐練習:創建可移動的層
13.5 小結
13.6 問題與解答
13.7 測試題
13.8 測試題答案
13.9 練習題
第14章 使用高級DOM功能
14.1 使用DOM節點
14.1.1 基本節點屬性
14.1.2 節點關係屬性
14.1.3 文檔方法
14.1.4 節點的方法
14.2 隱藏和顯示對象
14.3 在頁麵中修改文本
14.4 為頁麵添加文本
14.5 實踐練習:創建導航樹
14.6 小結
14.7 問題與解答
14.8 測試題
14.9 測試題答案
14.10 練習題
第四部分 使用JavaScript的高級功能
第15章 編寫規範型腳本
15.1 編寫腳本的最佳方法
15.1.1 內容、展現和行為
15.1.2 漸進式提高
15.1.3 添加事件處理程序
15.1.4 Web標準:瀏覽器無關性
15.1.5 為代碼編寫文檔
15.1.6 可用性
15.1.7 設計模型
15.1.8 可訪問性
15.2 讀取瀏覽器的信息
15.2.1 顯示瀏覽器的信息
15.2.2 處理特殊的瀏覽器
15.3 編寫跨瀏覽器的腳本
15.3.1 功能檢測技術
15.3.2 處理瀏覽器異常
15.4 為不支持JavaScript的瀏覽器提供支持
15.4.1 使用noscript標記
15.4.2 保持JavaScript的功能可選
15.4.3 避免錯誤
15.5 實踐練習:創建規範型腳本
15.6 小結
15.7 問題與解答
15.8 測試題
15.9 測試題答案
15.10 練習題
第16章 調試JavaScript應用程序
16.1 防止Bug
16.1.1 養成良好的編程習慣
16.1.2 常見錯誤的預防
16.2 基本調試工具
16.2.1 Firefox的JavaScript控製颱
16.2.2 在Internet Explorer中顯示錯誤信息
16.2.3 警告信息
16.2.4 使用注釋功能
16.2.5 其他調試工具
16.3 創建錯誤處理程序
16.3.1 使用onerror屬性
16.3.2 顯示錯誤信息
16.3.3 使用try和catch
16.4 高級調試工具
16.4.1 Web Developer工具欄(用於Firefox)
16.4.2 Developer工具欄(適用於Internet Explorer)
16.4.3 DOM Inspector(用於Firefox)
16.4.4 查看生成的源代碼
16.4.5 JavaScript Shell
16.5 實踐練習:調試腳本
16.5.1 測試腳本
16.5.2 解決問題
16.5.3 重新測試
16.6 小結
16.7 問題與解答
16.8 測試題
16.9 測試題答案
16.10 練習題
第17章 AJAX:遠程腳本技術
17.1 AJAX簡介
17.1.1 JavaScript客戶端(前端)
17.1.2 後颱
17.1.3 XML
17.1.4 AJAX的典型應用
17.1.5 框架和庫
17.1.6 AJAX的局限性
17.2 使用XMLHttpRequest
17.2.1 創建請求
17.2.2 打開URL
17.2.3 發送請求
17.2.4 等待響應
17.2.5 解釋響應數據
17.3 創建簡單的AJAX庫
17.3.1 ajaxRequest()函數
17.3.2 ajaxResponse()函數
17.3.3 使用AJAX庫
17.4 使用AJAX庫編寫AJAX測驗程序
17.4.1 HTML文件
17.4.2 XML文件
17.4.3 JavaScript文件
17.4.4 測試示例
17.5 調試AJAX應用程序
17.6 實踐練習:製作一個實時查詢錶單
17.6.1 HTML錶單
17.6.2 PHP後颱
17.6.3 JavaScript前端
17.6.4 執行程序
17.7 小結
17.8 問題與解答
17.9 測試題
17.10 測試題答案
17.11 練習題
第18章 Greasemonkey:使用JavaScript增強頁麵功能
18.1 Greasemonkey插件簡介
18.1.1 在Firefox中安裝Greasemonkey插件
18.1.2 Internet Explorer的Turnabout插件
18.1.3 其他瀏覽器
18.1.4 用戶腳本的安全性
18.2 使用用戶腳本
18.2.1 查找腳本
18.2.2 安裝腳本
18.2.3 管理腳本
18.2.4 測試用戶腳本
18.2.5 激活或禁用Greasemonkey或Turnabout
18.3 創建自己的用戶腳本
18.3.1 創建一個簡單的用戶腳本
18.3.2 描述用戶腳本
18.3.3 測試腳本
18.3.4 Greasemonkey API函數
18.3.5 創建專用站點腳本
18.3.6 調試用戶腳本
18.4 實踐練習:創建用戶腳本
18.4.1 運行過程
18.4.2 使用腳本
18.5 小結
18.6 問題與解答
18.7 測試題
18.8 測試題答案
18.9 練習題
第五部分 使用JavaScript創建多媒體應用程序
第19章 使用圖像和動畫
19.1 使用動態圖像
19.1.1 使用image對象
19.1.2 預加載圖像
19.2 創建Rollover(鼠標翻轉)效果
19.2.1 通過JavaScript創建Rollover效果
19.2.2 使用CSS而不是JavaScript實現Rollover效果
19.2.3 使用CSS技術創建圖形化的rollover效果
19.3 製作簡單的JavaScript幻燈效果
19.3.1 HTML文件
19.3.2 JavaScript文件
19.4 實踐練習:嚮幻燈中添加動畫效果
19.4.1 HTML文件
19.4.2 CSS文件
19.4.3 JavaScript腳本
19.4.4 整閤所有技術
19.5 小結
19.6 問題與解答
19.7 測試題
19.8 測試題答案
19.9 練習題
第20章 使用聲音和插件
20.1 插件介紹
20.1.1 embed和object標簽
20.1.2 理解MIME類型
20.1.3 在JavaScript中使用插件
20.1.4 插件功能檢測
20.2 JavaScript和Flash
20.2.1 ActionScript
20.2.2 JavaScript與Flash之間的交互
20.2.3 在JavaScript中嵌入Flash
20.3 使用JavaScript處理音頻
20.3.1 音頻格式
20.3.2 音頻插件
20.3.3 嵌入音頻
20.3.4 使用JavaScript控製音頻
20.3.5 檢測當前瀏覽支持的音頻功能
20.3.6 使用Flash
20.4 使用JavaScript測試音頻
20.5 實踐練習:使用鼠標播放音樂
20.5.1 示例的HTML文檔
20.5.2 CSS樣式單
20.5.3 播放音頻
20.5.4 嵌入音頻
20.5.5 整閤所有技術
20.6 小結
20.7 問題與解答
20.8 測試題
20.9 測試題答案
20.10 練習題
第六部分 創建復雜腳本
第21章 創建JavaScript下拉菜單
21.1 設計下拉菜單
21.1.1 創建HTML標記
21.1.2 使用CSS設計菜單布局
21.2 使用腳本來設置下拉菜單的行為
21.2.1 設置菜單
21.2.2 顯示子菜單
21.2.3 隱藏子菜單
21.2.4 完成腳本
21.3 實踐練習:利用CSS增強菜單
21.4 小結
21.5 問題與解答
21.6 測試題
21.7 測試題答案
21.8 練習題
第22章 創建JavaScript遊戲
22.1 遊戲簡介
22.1.1 遊戲玩法
22.1.2 得分計算
22.1.3 創建圖形
22.2 創建HTML文檔
22.3 創建腳本
22.3.1 使用對象存儲紙牌
22.3.2 構建遊戲闆
22.3.3 洗牌
22.3.4 將牌放到遊戲闆上
23.3.5 計算行、列和對角綫得分
23.3.6 閤計得分
23.3.7 結束遊戲
22.4 利用CSS添加樣式
22.5 實踐練習:組閤應用技術
22.6 小結
22.7 問題與解答
22.8 測試題
22.9 測試題答案
22.10 練習題
第23章 創建JavaScript應用程序
23.1 創建滾動窗口
23.1.1 HTML文檔
23.1.2 CSS文件
23.1.3 JavaScript文件
23.2 利用JavaScript在CSS樣式錶之間切換
23.2.1 創建HTML文檔
23.2.2 創建第一張樣式錶
23.2.3 創建第二張樣式錶
23.2.4 創建腳本
23.3 實踐練習:創建動態錶單
23.3.1 創建HTML文檔
23.3.2 添加腳本
23.4 小結
23.5 問題與解答
23.6 測試題
23.7 測試題答案
23.8 練習題
第24章 JavaScript的未來
24.1 學習JavaScript高級技巧
24.2 未來的Web技術
24.2.1 JavaScript的未來版本
24.2.2 DOM的未來版本
24.2.3 XML(可擴展標記語言)
24.2.4 XHTML(可擴展超文本標記語言)
24.2.5 XSL(可擴展樣式錶語言)
24.3 為未來做好準備
24.3.1 保持腳本兼容性
24.3.2 保持HTML兼容
24.3.3 詳細編製文檔
24.4 繼續學習其他語言
24.5 實踐練習:創建拖放式對象
24.5.1 HTML文檔
24.5.2 CSS樣式錶
24.5.3 實現拖放
24.5.4 JavaScript文件
24.6 小結
24.7 問題與解答
24.8 測試題
24.9 測試題答案
24.10 練習題
第七部分 附錄
附錄A 其他JavaScript資源
A.1 JavaScript網站
A.2 Web開發站點
附錄B JavaScript開發人員工具
B.1 HTML和文本編輯器
B.1.1 HomeSite
B.1.2 TopStyle
B.1.3 FrontPage
B.1.4 BBEdit
B.1.5 文本編輯器
B.2 HTML驗證工具
B.3 調試工具
附錄C 術語錶
附錄D JavaScript快速參考
D.1 內置對象
D.1.1 數組
D.1.2 字符串
D.1.3 Math
D.1.4 Date
D.2 創建和自定義對象
D.2.1 創建對象
D.2.2 自定義對象
D.3 JavaScript語句
D.3.1 注釋
D.3.2 break
D.3.3 continue
D.3.4 for
D.3.5 for...in
D.3.6 function
D.3.7 if...else
D.3.8 return
D.3.9 var
D.3.10 while
D.4 JavaScript內置函數
D.4.1 eval
D.4.2 parseInt
D.4.3 parseFloat
附錄E DOM快速參考
E.1 DOM Level
E.1.1 window
E.1.2 location
E.1.3 history
E.1.4 document
E.1.5 navigator
E.2 DOM Level 1
E.2.1 基本的節點屬性
E.2.2 關係屬性
E.2.3 偏置屬性
E.2.4 樣式屬性
E.2.5 節點方法
E.2.6 文檔對象方法和屬性
· · · · · · (
收起)