注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)網(wǎng)絡(luò)編程征服AJAX:Web 2.0開發(fā)技術(shù)詳解

征服AJAX:Web 2.0開發(fā)技術(shù)詳解

征服AJAX:Web 2.0開發(fā)技術(shù)詳解

定 價(jià):¥56.00

作 者: 王沛編著
出版社: 人民郵電出版社
叢編項(xiàng): 征服Ajax
標(biāo) 簽: J2EE

ISBN: 9787115148049 出版時(shí)間: 2006-05-01 包裝: 膠版紙
開本: 小16開 頁數(shù): 521 字?jǐn)?shù):  

內(nèi)容簡介

本書是一部關(guān)于Ajax技術(shù)計(jì)算機(jī)編程技術(shù)專著,本書對(duì)Ajax的各個(gè)技術(shù)要素進(jìn)行了系統(tǒng)而全面的介紹,從而揭開Ajax的神秘面紗。本書適合網(wǎng)絡(luò)編程人員、網(wǎng)頁制作人員、網(wǎng)站建設(shè)者、各類網(wǎng)頁設(shè)計(jì)制作培訓(xùn)學(xué)校。本書全面地介紹了Ajax技術(shù)。全書分為4個(gè)部分。第1部分介紹AjaX應(yīng)用程序的主要特點(diǎn),同時(shí)還通過“留言板”程序比較了Ajax技術(shù)和傳統(tǒng)Web開發(fā)技術(shù)的不同之處。第2部分和第3部分講解了Ajax的核心技術(shù),包括JavaScript、XMLHttpRequest、DOM、XML、CSS以及服務(wù)器端編程。第4部分通過完整項(xiàng)目案例介紹AjaX的典型應(yīng)用。本書適合網(wǎng)絡(luò)編程人員、網(wǎng)頁制作人員和網(wǎng)站建設(shè)者閱讀。

作者簡介

暫缺《征服AJAX:Web 2.0開發(fā)技術(shù)詳解》作者簡介

圖書目錄

第1部分 Ajax入門
第1章 Ajax概述 3
1.1 什么是Ajax 3
1.1.1 Ajax的含義 3
1.1.2 Ajax的發(fā)展歷史 4
1.1.3 使用Ajax能做什么 4
1.2 Ajax:新的Web開發(fā)模式 7
1.2.1 傳統(tǒng)的Web開發(fā)模式 7
1.2.2 基于Ajax的開發(fā)模式 9
1.2.3 兩種開發(fā)模式的比較 9
1.3 Ajax中的關(guān)鍵技術(shù) 11
1.3.1 JavaScript腳本語言 11
1.3.2 XMLHttpRequest對(duì)象 11
1.3.3 可擴(kuò)展標(biāo)記語言(XML) 12
1.3.4 文檔對(duì)象模型(DOM) 12
1.3.5 級(jí)聯(lián)樣式表技術(shù)(CSS) 12
1.4 使用Ajax帶來的問題 13
1.4.1 用戶瀏覽習(xí)慣改變帶來的問題 14
1.4.2 對(duì)搜索引擎的不友好 14
1.4.3 前進(jìn)后退按鈕的失效 14
1.4.4 刷新定位問題 16
1.4.5 性能問題 16
1.4.6 開發(fā)難度的加大 16
第2章 創(chuàng)建第一個(gè)Ajax應(yīng)用:留言板 18
2.1 環(huán)境設(shè)置、需求分析及數(shù)據(jù)庫設(shè)計(jì) 18
2.1.1 環(huán)境設(shè)置 18
2.1.2 留言板的需求分析 20
2.1.3 數(shù)據(jù)庫設(shè)計(jì) 21
2.2 使用傳統(tǒng)的Web開發(fā)方式 21
2.2.1 設(shè)計(jì)留言顯示頁面 21
2.2.2 設(shè)計(jì)留言提交頁面 23
2.2.3 服務(wù)器端程序設(shè)計(jì) 24
2.3 使用Ajax實(shí)現(xiàn)留言板 26
2.3.1 一個(gè)頁面就是一個(gè)程序 27
2.3.2 客戶端頁面設(shè)計(jì) 27
2.3.3 服務(wù)器端程序設(shè)計(jì) 27
2.3.4 使用XMLHttpRequest將數(shù)據(jù)提交到服務(wù)器 29
2.3.5 處理服務(wù)器返回的信息 31
2.3.6 將留言內(nèi)容立刻顯示在頁面 31
第2部分 JavaScript精講
第3章 JavaScript語言基礎(chǔ) 39
3.1 JavaScript概述 39
3.1.1 JavaScript簡介 39
3.1.2 JavaScript版本介紹 39
3.1.3 JavaScript在Ajax中的作用 40
3.2 JavaScript編輯和調(diào)試工具 42
3.2.1 用什么編寫JavaScript程序 42
3.2.2 使用瀏覽器調(diào)試JavaScript程序 42
3.2.3 使用Venkman調(diào)試JavaScript程序 44
3.3 如何在HTML中工作 45
3.3.1 <script>標(biāo)記:標(biāo)識(shí)語言類型 45
3.3.2 使用外部JavaScript文件 46
3.3.3 嵌入HTML標(biāo)記的JavaScript代碼 47
3.4 建立JavaScript表達(dá)式 47
3.4.1 變量 47
3.4.2 常量 48
3.4.3 數(shù)據(jù)類型 49
3.4.4 數(shù)據(jù)類型的轉(zhuǎn)換 51
3.4.5 JavaScript的語句結(jié)構(gòu) 53
3.4.6 可選的分號(hào) 54
3.4.7 加入注釋 55
3.4.8 建立賦值表達(dá)式 56
3.4.9 建立數(shù)字表達(dá)式 56
3.4.10 使用字符串表達(dá)式 57
3.4.11 使用比較表達(dá)式 58
3.4.12 使用邏輯表達(dá)式 60
3.4.13 使用逗號(hào)(,)表達(dá)式 62
3.4.14 理解操作符的優(yōu)先級(jí) 62
第4章 流程控制和函數(shù) 64
4.1 代碼流程控制:條件語句和循環(huán)語句 64
4.1.1 使用if語句進(jìn)行條件判斷 64
4.1.2 使用if…else…處理?xiàng)l件不成立的情形 65
4.1.3 使用條件運(yùn)算符(?:) 66
4.1.4 使用switch語句進(jìn)行多重條件判斷 66
4.1.5 使用while循環(huán) 68
4.1.6 使用do…while循環(huán) 69
4.1.7 使用for循環(huán) 69
4.1.8 break語句:立即跳出循環(huán)的執(zhí)行 70
4.1.9 continue語句:停止當(dāng)前循環(huán)進(jìn)入下一次循環(huán) 71
4.2 使用函數(shù) 72
4.2.1 什么是函數(shù) 72
4.2.2 定義和調(diào)用函數(shù) 72
4.2.3 給函數(shù)傳遞參數(shù) 74
4.2.4 參數(shù)的值傳遞和引用傳遞 75
4.2.5 使用return語句從函數(shù)返回值 76
4.2.6 變量的作用范圍:局部變量和全局變量 77
4.2.7 使用遞歸函數(shù) 78
4.3 使用JavaScript內(nèi)部函數(shù) 79
4.3.1 什么是內(nèi)部函數(shù) 79
4.3.2 使用eval函數(shù)來執(zhí)行JavaScript代碼 79
4.3.3 使用parseInt和parseFloat函數(shù)將字符串轉(zhuǎn)換為數(shù)字 80
4.3.4 使用escape和unescape函數(shù)進(jìn)行URL編碼和解碼 81
4.3.5 使用isNaN和isFinite函數(shù)判斷數(shù)字的類型 81
第5章 對(duì)象和表單 82
5.1 對(duì)象概述 82
5.2 處理日期和時(shí)間:Date對(duì)象 82
5.2.1 創(chuàng)建一個(gè)日期對(duì)象 82
5.2.2 從Date對(duì)象中提取信息 83
5.2.3 設(shè)置日期對(duì)象的值 85
5.2.4 進(jìn)行日期計(jì)算 85
5.2.5 其他Date對(duì)象的方法 86
5.3 進(jìn)行數(shù)學(xué)運(yùn)算:Math對(duì)象 87
5.3.1 將一個(gè)小數(shù)四舍五入到指定位數(shù) 88
5.3.2 使用隨機(jī)函數(shù)Math.random() 89
5.4 使用數(shù)組:Array對(duì)象 90
5.4.1 創(chuàng)建一個(gè)數(shù)組 90
5.4.2 使用數(shù)組元素 91
5.4.3 使用多維數(shù)組 92
5.4.4 使用數(shù)組的length屬性 92
5.4.5 使用數(shù)組對(duì)象的方法 94
5.5 處理文本:String對(duì)象 95
5.5.1 確定字符串的長度 96
5.5.2 搜索和提取子字符串 96
5.5.3 替換和匹配字符串 97
5.5.4 字符串對(duì)象的其他方法 98
5.6 對(duì)象的高級(jí)應(yīng)用 98
5.6.1 獲取瀏覽器信息:使用navigator對(duì)象 98
5.6.2 處理地址欄信息:location對(duì)象 100
5.6.3 控制前進(jìn)和后退:使用history對(duì)象 102
5.6.4 文檔操作初步:document對(duì)象 102
5.6.5 使用with()語句簡化對(duì)象訪問 106
5.7 事件機(jī)制 107
5.7.1 什么是事件 107
5.7.2 使用HTML標(biāo)記創(chuàng)建事件處理程序 107
5.7.3 使用對(duì)象的事件屬性創(chuàng)建事件處理程序 108
5.7.4 使用attachEvent和addEventListener方法綁定事件處理程序 109
5.7.5 使用event對(duì)象獲取事件信息 109
5.7.6 使用event對(duì)象的屬性 111
5.8 表單編程入門 112
5.8.1 使用form對(duì)象 112
5.8.2 引用表單域 114
5.8.3 表單域的通用屬性 114
5.8.4 表單域的通用方法 115
5.8.5 表單域的通用事件 116
5.9 使用文本域 117
5.9.1 獲取和設(shè)置文本域的內(nèi)容 118
5.9.2 使用defaultValue獲得HTML標(biāo)記中的value值 118
5.9.3 使用select方法選中文本 119
5.9.4 使用onselect事件處理用戶的選中操作 119
5.10 使用按鈕類表單 119
5.10.1 使用簡單按鈕 119
5.10.2 使用復(fù)選框 119
5.10.3 使用單選按鈕 121
5.11 使用下拉列表框 121
5.11.1 使用value屬性獲取和設(shè)置下拉列表框的值 122
5.11.2 使用length屬性獲取選項(xiàng)的個(gè)數(shù) 122
5.11.3 使用selectedIndex屬性獲取當(dāng)前選項(xiàng)的索引 122
5.11.4 使用options屬性獲取選項(xiàng)集合 122
5.11.5 使用option對(duì)象的value屬性和text屬性 123
5.11.6 使用option對(duì)象的selected屬性 123
5.11.7 使用select對(duì)象的onchange事件 123
5.11.8 為select對(duì)象添加一個(gè)選項(xiàng) 124
5.11.9 從select對(duì)象中刪除一個(gè)選項(xiàng) 124
5.11.10 清空一個(gè)select對(duì)象 124
5.11.11 替換一個(gè)選項(xiàng) 125
3.10.12 下拉框?qū)嵗憾?jí)聯(lián)動(dòng)的下拉列表菜單 125
5.12 執(zhí)行表單驗(yàn)證 127
第6章 JavaScript面向?qū)ο蟪绦蛟O(shè)計(jì) 129
6.1 JavaScript中支持面向?qū)ο蟮幕A(chǔ) 129
6.1.1 用定義函數(shù)的方式定義類 129
6.1.2 使用new操作符獲得一個(gè)類的實(shí)例 129
6.1.3 使用方括號(hào)([])引用對(duì)象的屬性和方法 130
6.1.4 動(dòng)態(tài)添加、修改、刪除對(duì)象的屬性和方法 132
6.1.5 使用大括號(hào)({})語法創(chuàng)建無類型對(duì)象 133
6.1.6 prototype原型對(duì)象 134
6.2 深入認(rèn)識(shí)JavaScript中的函數(shù) 135
6.2.1 概述 135
6.2.2 認(rèn)識(shí)函數(shù)對(duì)象(Function Object) 135
6.2.3 函數(shù)對(duì)象和其他內(nèi)部對(duì)象的關(guān)系 137
6.2.4 將函數(shù)作為參數(shù)傳遞 139
6.2.5 傳遞給函數(shù)的隱含參數(shù):arguments 139
6.2.6 函數(shù)的apply、call方法和length屬性 140
6.2.7 深入認(rèn)識(shí)JavaScript中的this指針 141
6.3 類的實(shí)現(xiàn) 142
6.3.1 理解類的實(shí)現(xiàn)機(jī)制 142
6.3.2 使用prototype對(duì)象定義類成員 143
6.3.3 一種JavaScript類的設(shè)計(jì)模式 145
6.4 公有成員、私有成員和靜態(tài)成員 146
6.4.1 實(shí)現(xiàn)類的公有成員 146
6.4.2 實(shí)現(xiàn)類的私有成員 146
6.4.3 實(shí)現(xiàn)靜態(tài)成員 147
6.5 使用for(…in…)實(shí)現(xiàn)反射機(jī)制 148
6.5.1 什么是反射機(jī)制 148
6.5.2 在JavaScript中利用for(…in…)語句實(shí)現(xiàn)反射 149
6.5.3 使用反射來傳遞樣式參數(shù) 149
6.6 類的繼承 150
6.6.1 利用共享prototype實(shí)現(xiàn)繼承 150
6.6.2 利用反射機(jī)制和prototype實(shí)現(xiàn)繼承 152
6.6.3 prototype-1.3.1框架中的類繼承實(shí)現(xiàn)機(jī)制 154
6.7 實(shí)現(xiàn)抽象類 156
6.7.1 抽象類和虛函數(shù) 156
6.7.2 在JavaScript實(shí)現(xiàn)抽象類 156
6.7.3 使用抽象類的示例 157
6.8 事件設(shè)計(jì)模式 158
6.8.1 事件設(shè)計(jì)概述 158
6.8.2 最簡單的事件設(shè)計(jì)模式 158
6.8.3 給事件處理程序傳遞參數(shù) 159
6.8.4 使自定義事件支持多綁定 162
6.9 實(shí)例:使用面向?qū)ο笏枷胩幚韈ookie 163
6.9.1 需求分析 163
6.9.2 創(chuàng)建Cookie對(duì)象 163
6.9.3 實(shí)現(xiàn)設(shè)置Cookie的方法 163
6.9.4 實(shí)現(xiàn)取Cookie值的方法 164
6.9.5 實(shí)現(xiàn)刪除Cookie的方法 164
第7章 JavaScript高級(jí)技術(shù) 166
7.1 框架編程 166
7.1.1 框架編程概述 166
7.1.2 框架間的互相引用 166
7.1.3 改變框架的載入頁面 167
7.1.4 引用其他框架內(nèi)的JavaScript變量和函數(shù) 168
7.2 使用cookie 169
7.2.1 cookie概述 169
7.2.2 設(shè)置cookie 170
7.2.3 獲取cookie的值 171
7.2.4 給cookie設(shè)置終止日期 172
7.2.5 刪除cookie 173
7.2.6 指定可訪問cookie的路徑 173
7.2.7 指定可訪問cookie的主機(jī)名 173
7.2.8 綜合示例:構(gòu)造通用的cookie處理函數(shù) 174
7.3 使用正則表達(dá)式 175
7.3.1 正則表達(dá)式概述 175
7.3.2 使用RegExp對(duì)象執(zhí)行字符串模式匹配 177
7.3.3 提取子字符串 178
7.3.4 和字符串相關(guān)的操作 179
7.4 使用window對(duì)象 180
7.4.1 使用window.open方法新建窗口 180
7.4.2 使用定時(shí)器實(shí)現(xiàn)JavaScript的延期執(zhí)行或重復(fù)執(zhí)行 181
7.4.3 給定時(shí)器調(diào)用傳遞參數(shù) 184
7.4.4 使用status和defaultStatus屬性改變狀態(tài)欄信息 185
7.4.5 使用alert、prompt和confirm語句與用戶進(jìn)行交互 186
7.5 異常處理 187
7.5.1 異常處理概述 187
7.5.2 使用try-catch-finally處理異常 187
7.5.3 使用throw語句拋出異?!?88
第3部分 Ajax核心技術(shù)
第8章 XMLHttpRequest對(duì)象詳解 193
8.1 概述 193
8.1.1 什么是XMLHttpRequest對(duì)象 193
8.1.2 XMLHttpRequest對(duì)象在Ajax中的作用 193
8.2 使用XMLHttpRequest對(duì)象和服務(wù)器進(jìn)行通信 194
8.2.1 創(chuàng)建XMLHttpRequest對(duì)象 194
8.2.2 使用open方法創(chuàng)建一個(gè)請(qǐng)求 195
8.2.3 使用send方法發(fā)送一個(gè)請(qǐng)求 196
8.2.4 使用onreadystatechange事件捕獲請(qǐng)求的狀態(tài)變化 196
8.2.5 使用readyState屬性判斷請(qǐng)求狀態(tài) 196
8.2.6 使用status屬性判斷請(qǐng)求的結(jié)果 197
8.2.7 使用responseText獲得返回的文本 198
8.2.8 使用responseXML屬性獲取XML文檔 199
8.2.9 使用abort方法取消一個(gè)請(qǐng)求 200
8.2.10 XMLHttpRequest對(duì)象的其他屬性和方法 201
8.3 XMLHttpRequest對(duì)象使用示例 201
8.3.1 用get方法檢測用戶名是否存在 201
8.3.2 使用post方法向服務(wù)器提交數(shù)據(jù) 203
8.3.3 實(shí)現(xiàn)服務(wù)器相關(guān)的二級(jí)聯(lián)動(dòng)菜單 204
第9章 Ajax的基礎(chǔ)架構(gòu):DOM模型 210
9.1 概述 210
9.1.1 什么是DOM模型 210
9.1.2 DOM模型的組成部分 211
9.1.3 DOM模型在Ajax開發(fā)中的作用 211
9.1.4 DOM模型的發(fā)展 211
9.1.5 DOM模型和DHTML的關(guān)系 211
9.1.6 小結(jié) 212
9.2 DOM結(jié)構(gòu)模型 212
9.2.1 理解DOM中的文檔層次結(jié)構(gòu) 212
9.2.2 結(jié)點(diǎn)的概念 212
9.2.3 結(jié)點(diǎn)的類型 213
9.3 處理DOM中的結(jié)點(diǎn) 213
9.3.1 直接引用結(jié)點(diǎn) 213
9.3.2 間接引用結(jié)點(diǎn) 214
9.3.3 獲取結(jié)點(diǎn)信息 215
9.3.4 處理屬性結(jié)點(diǎn) 216
9.3.5 處理文本結(jié)點(diǎn) 217
9.3.6 因?yàn)g覽器而異的空白結(jié)點(diǎn) 218
9.3.7 使用innerHTML改變結(jié)點(diǎn)的內(nèi)容 219
9.4 改變文檔的層次結(jié)構(gòu) 220
9.4.1 使用document.createElement方法創(chuàng)建元素結(jié)點(diǎn) 220
9.4.2 使用document.createTextNode方法創(chuàng)建文本結(jié)點(diǎn) 220
9.4.3 使用appendChild方法添加結(jié)點(diǎn) 220
9.4.4 使用insertBefore方法插入子結(jié)點(diǎn) 221
9.4.5 使用replaceChild方法取代子結(jié)點(diǎn) 222
9.4.6 使用cloneNode方法復(fù)制結(jié)點(diǎn) 223
9.4.7 使用removeChild方法刪除子結(jié)點(diǎn) 223
9.5 表格操作 224
9.5.1 表格操作概述 224
9.5.2 DOM1(DHTML)中表格對(duì)象的結(jié)構(gòu) 226
9.5.3 創(chuàng)建一個(gè)表格對(duì)象 226
9.5.4 添加一行 226
9.5.5 添加單元格 226
9.5.6 引用單元格 228
9.5.7 使用單元格對(duì)象 228
9.5.8 刪除行和單元格 228
9.5.9 交換兩行的位置 230
9.5.10 交換兩個(gè)單元格的位置 233
9.5.11 生成表格的其他方法 234
第10章 控制外觀:CSS入門 235
10.1 CSS概述 235
10.1.1 什么是CSS 235
10.1.2 使用CSS的優(yōu)點(diǎn) 235
10.1.3 CSS在Ajax開發(fā)中的作用 236
10.2 使用CSS控制頁面表現(xiàn) 238
10.2.1 CSS的樣式 238
10.2.2 CSS基本語法 240
10.2.3 使用標(biāo)記選擇器 240
10.2.4 使用類型選擇器 241
10.2.5 使用id選擇器 242
10.2.6 使用層次選擇器 243
10.2.7 繼承 244
10.2.8 樣式應(yīng)用就近原則 244
10.2.9 認(rèn)識(shí)CSS中的盒模型 246
10.2.10 設(shè)計(jì)合理的CSS結(jié)構(gòu) 247
10.3 使用JavaScript控制CSS 247
10.3.1 通過style對(duì)象改變結(jié)點(diǎn)的CSS 247
10.3.2 使用className屬性指定結(jié)點(diǎn)樣式 248
10.4 使用IE Only的CSS濾鏡 249
10.4.1 CSS濾鏡概述 249
10.4.2 使用界面濾鏡 250
10.4.3 靜態(tài)濾鏡 254
10.4.4 動(dòng)態(tài)濾鏡 258
10.4.5 使用JavaScript控制CSS濾鏡 261
第11章 Ajax標(biāo)準(zhǔn)通信載體--XML語言 263
11.1 XML概述 263
11.1.1 一個(gè)簡單的XML實(shí)例 263
11.1.2 XML的基本概念 264
11.1.3 XML在Ajax中的作用 265
11.2 使用Javascript操作XML 265
11.2.1 MSXML介紹 265
11.2.2 在IE瀏覽器中創(chuàng)建XML片段 266
11.2.3 在IE瀏覽器中解析XML文本 267
11.2.4 使用Mozilla瀏覽器支持的DOM模型創(chuàng)建XML片段 268
11.2.5 使用Mozilla瀏覽器支持的DOM模型解析XML片段 269
11.2.6 基于Javascript的XML解析程序 270
11.3 其他通信模式 271
11.3.1 使用XML的問題 271
11.3.2 使用純文本 271
11.3.3 使用HTML片段 271
11.3.4 使用JSON 272
第12章 服務(wù)器端編程 277
12.1 服務(wù)器端程序在Ajax中的角色 277
12.1.1 理解Ajax中的服務(wù)器端編程模式 277
12.1.2 Ajax中服務(wù)器端程序設(shè)計(jì)的特點(diǎn) 277
12.1.3 參數(shù)傳遞方式 278
12.1.4 接口設(shè)計(jì)模式 278
12.2 常用服務(wù)器端編程技術(shù)介紹 280
12.2.1 JSP語言介紹 280
12.2.2 PHP語言介紹 281
12.2.3 ASP.NET介紹 281
12.3 實(shí)現(xiàn)Ajax翻頁效果 282
12.3.1 翻頁 282
12.3.2 系統(tǒng)描述 282
12.3.3 客戶端設(shè)計(jì):頁面結(jié)構(gòu) 282
12.3.4 客戶端設(shè)計(jì):頁面外觀 283
12.3.5 客戶端設(shè)計(jì):設(shè)計(jì)Ajax邏輯 283
12.3.6 客戶端設(shè)計(jì):分頁按鈕 284
12.3.7 服務(wù)器端設(shè)計(jì):通過ASP.NET控件直接得到HTML代碼 285
12.3.8 服務(wù)器端設(shè)計(jì):設(shè)計(jì)通用的分頁標(biāo)簽生成器 285
12.3.9 服務(wù)器端設(shè)計(jì):處理用戶的查詢 286
12.3.10 最終效果 290
第13章 Ajax中的常見問題及解決方案 292
13.1 跨瀏覽器問題 292
13.1.1 JavaScript中錯(cuò)誤信息的顯示 292
13.1.2 JavaScript中的eval函數(shù)能否使用apply方法 293
13.1.3 DOM中使用getElementById獲取指定id結(jié)點(diǎn)的引用 295
13.1.4 DOM中的事件綁定語法 295
13.1.5 DOM中事件順序模型的不同 296
13.1.6 CSS中使用!important提高屬性優(yōu)先級(jí) 298
13.1.7 在CSS中使用IE瀏覽器不支持的屬性實(shí)現(xiàn)瀏覽器選擇性 299
13.1.8 在CSS中使用反斜杠注釋屏蔽IE5-Mac 299
13.2 解決導(dǎo)航問題 300
13.2.1 導(dǎo)航問題的由來 300
13.2.2 利用URL存儲(chǔ)狀態(tài)信息 300
13.2.3 利用Hash參數(shù)解決刷新問題 301
13.2.4 解決瀏覽器的【前進(jìn)】【后退】按鈕失效問題 305
13.3 搜索引擎問題 312
13.3.1 Ajax程序不易被搜索引擎檢索到 312
13.3.2 使用冗余地址思路解決搜索引擎問題 313
13.4 安全問題 313
13.4.1 服務(wù)器端始終要作有效性驗(yàn)證 313
13.4.2 避免拒絕服務(wù)攻擊(DoS攻擊) 315
13.4.3 其他安全問題 315
13.5 性能問題 316
13.5.1 衡量JavaScript代碼的運(yùn)行事件 316
13.5.2 因?yàn)g覽器而異的字符串連接操作 316
13.5.3 按需載入JavaScript代碼 318
13.5.4 壓縮JavaScript代碼 319
第4部分 典型應(yīng)用
第14章 動(dòng)態(tài)獲取數(shù)據(jù)的樹狀菜單 323
14.1 樹狀菜單概述 323
14.1.1 什么是樹狀菜單 323
14.1.2 使用無序列表標(biāo)記(ul) 324
14.1.3 使用CSS控制外觀 324
14.1.4 展開和折疊涉及的關(guān)鍵技術(shù) 326
14.2 實(shí)現(xiàn)樹狀菜單的兩種方式 326
14.2.1 完全在客戶端實(shí)現(xiàn) 326
14.2.2 完全由服務(wù)器端實(shí)現(xiàn) 327
14.2.3 基于Ajax的實(shí)現(xiàn) 328
14.3 設(shè)計(jì)樹狀菜單的數(shù)據(jù)結(jié)構(gòu) 328
14.3.1 設(shè)計(jì)樹結(jié)點(diǎn)接口類 328
14.3.2 實(shí)現(xiàn)樹結(jié)構(gòu)的數(shù)據(jù)庫設(shè)計(jì) 329
14.3.3 最終樹結(jié)構(gòu)實(shí)現(xiàn)類 330
14.3.4 服務(wù)端的數(shù)據(jù)處理 333
14.3.5 靜態(tài)樹狀菜單的實(shí)現(xiàn) 334
14.4 動(dòng)態(tài)獲取數(shù)據(jù)的樹狀菜單 337
14.4.1 什么時(shí)候需要?jiǎng)討B(tài)獲取數(shù)據(jù) 337
14.4.2 服務(wù)器端的代碼設(shè)計(jì) 337
14.4.3 創(chuàng)建獲取數(shù)據(jù)的方法 339
14.4.4 處理取回?cái)?shù)據(jù)的方法 340
14.4.5 服務(wù)器端的請(qǐng)求處理方法 341
第15章 RSS閱讀器 343
15.1 RSS概述 344
15.1.1 什么是RSS 344
15.1.2 一個(gè)簡單的RSS 2.0示例 345
15.1.3 <channel>元素說明 346
15.1.4 <item>元素說明 347
15.2 閱讀RSS模塊程序設(shè)計(jì) 347
15.2.1 客戶端原理分析 347
15.2.2 客戶端代碼設(shè)計(jì) 347
15.2.3 創(chuàng)建RSSReader類 350
15.2.4 服務(wù)器端代碼設(shè)計(jì) 353
15.2.5 創(chuàng)建LoadRSS類 355
15.3 添加RSS模塊程序設(shè)計(jì) 358
15.3.1 客戶端原理分析 358
15.3.2 客戶端代碼設(shè)計(jì) 358
15.3.3 服務(wù)器端代碼設(shè)計(jì) 360
15.3.4 數(shù)據(jù)庫設(shè)計(jì) 361
第16章 搜索提示(Suggest) 365
16.1 搜索提示概述 365
16.1.1 Google Suggest介紹 365
16.1.2 搜索提示所帶來的好處 366
16.1.3 基本原理分析 366
16.2 客戶端代碼 367
16.2.1 客戶端原理分析 367
16.2.2 創(chuàng)建請(qǐng)求 368
16.2.3 處理返回?cái)?shù)據(jù) 369
16.3 服務(wù)器端代碼 370
16.3.1 服務(wù)器端原理分析 370
16.3.2 處理服務(wù)請(qǐng)求 371
16.3.3 數(shù)據(jù)庫設(shè)計(jì) 372
第17章 基于Ajax的相冊(cè) 374
17.1 基本原理分析 374
17.1.1 界面設(shè)計(jì)分析 374
17.1.2 CSS設(shè)計(jì)分析 375
17.1.3 圖片放大原理分析 378
17.1.4 動(dòng)態(tài)更換皮膚 379
17.2 Ajax程序設(shè)計(jì) 380
17.2.1 原理分析 380
17.2.2 創(chuàng)建XMLHttpRequest對(duì)象 380
17.2.3 發(fā)送請(qǐng)求 381
17.2.4 處理返回?cái)?shù)據(jù) 382
17.3 服務(wù)器端程序設(shè)計(jì) 383
17.3.1 處理服務(wù)請(qǐng)求 383
17.3.2 創(chuàng)建實(shí)體訪問類 385
17.3.3 數(shù)據(jù)庫設(shè)計(jì) 386
第18章 基于Ajax的聊天室程序 389
18.1 聊天室概述 390
18.1.1 聊天室程序所需要解決的問題 390
18.1.2 傳統(tǒng)聊天室的缺點(diǎn) 390
18.1.3 使用Ajax技術(shù)的好處 391
18.1.4 基本原理分析 391
18.2 數(shù)據(jù)庫設(shè)計(jì) 392
18.2.1 數(shù)據(jù)庫設(shè)計(jì)基本原理 392
18.2.2 數(shù)據(jù)表設(shè)計(jì) 392
18.2.3 創(chuàng)建表所對(duì)應(yīng)的實(shí)體類 393
18.3 客戶端程序設(shè)計(jì) 395
18.3.1 基本原理分析 395
18.3.2 選擇聊天室頁面 396
18.3.3 聊天室主頁面 398
18.3.4 調(diào)用初始化方法 401
18.3.5 獲得消息數(shù)據(jù)處理 402
18.3.6 發(fā)送消息數(shù)據(jù)處理 403
18.4 服務(wù)器端程序設(shè)計(jì) 404
18.4.1 刷新時(shí)獲得消息請(qǐng)求的處理 404
18.4.2 發(fā)送消息請(qǐng)求的處理 407
18.4.3 數(shù)據(jù)庫連接工具類 408
第19章 拖拽方式定制個(gè)性化主頁 411
19.1 系統(tǒng)概述 411
19.1.1 系統(tǒng)目標(biāo):模仿Google ig 411
19.1.2 系統(tǒng)預(yù)覽 412
19.1.3 系統(tǒng)構(gòu)架 412
19.2 用戶登錄模塊 414
19.2.1 原理分析 414
19.2.2 客戶端代碼 415
19.2.3 處理服務(wù)請(qǐng)求 416
19.2.4 服務(wù)器端代碼 417
19.2.5 連接數(shù)據(jù)庫 423
19.3 小窗口初始化模塊 425
19.3.1 原理分析 425
19.3.2 數(shù)據(jù)庫設(shè)計(jì) 426
19.3.3 訪問數(shù)據(jù)庫的實(shí)體類 426
19.3.4 父類代碼的實(shí)現(xiàn) 429
19.3.5 創(chuàng)建歡迎小窗口 430
19.3.6 創(chuàng)建新聞RSS小窗口 431
19.3.7 創(chuàng)建書簽小窗口 432
19.4 個(gè)性化主頁模塊 433
19.4.1 布局顯示原理分析 433
19.4.2 數(shù)據(jù)庫設(shè)計(jì) 433
19.4.3 創(chuàng)建訪問數(shù)據(jù)庫實(shí)體類 435
19.4.4 客戶端代碼 439
19.4.5 布局設(shè)置原理分析 441
19.4.6 關(guān)閉窗口自動(dòng)保存布局 441
19.4.7 拖拽窗口自動(dòng)保存布局 443
19.4.8 服務(wù)器端代碼 446
19.5 拖拽原理分析 448
19.5.1 拖拽原理分析 448
19.5.2 釋放原理分析 449
19.5.3 通用的拖放類 450
第20章 上傳文件顯示進(jìn)度條 452
20.1 上傳文件概述 452
20.1.1 上傳文件的表單概述 452
20.1.2 上傳文件后的服務(wù)器端處理 453
20.1.3 使用Apache的FlieUpload 455
20.1.4 使用Session記錄上傳進(jìn)度 456
20.2 客戶端實(shí)現(xiàn) 456
20.2.1 客戶端原理分析 456
20.2.2 客戶端代碼 457
20.2.3 客戶端請(qǐng)求處理 458
20.3 服務(wù)器端實(shí)現(xiàn) 459
20.3.1 服務(wù)器端原理分析 459
20.3.2 上傳文件處理過程 460
20.3.3 獲取上傳信息 462
20.3.4 創(chuàng)建監(jiān)聽器類 464
20.3.5 注冊(cè)監(jiān)聽器類 466
第21章 滑動(dòng)顯示分頁 470
21.1 滑動(dòng)顯示分頁概述 470
21.1.1 傳統(tǒng)的分頁顯示 470
21.1.2 滑動(dòng)分頁顯示 471
21.1.3 滑塊基本原理 471
21.2 客戶端實(shí)現(xiàn) 473
21.2.1 客戶端基本原理 473
21.2.2 客戶端頁面代碼 473
21.2.3 Javascript代碼分析 475
21.3 服務(wù)器端代碼實(shí)現(xiàn) 477
21.3.1 服務(wù)器端請(qǐng)求處理 477
21.3.2 創(chuàng)建數(shù)據(jù)實(shí)體類 479
21.3.3 數(shù)據(jù)庫設(shè)計(jì) 480
21.3.4 連接數(shù)據(jù)庫的工具類 481
第22章 仿Windows關(guān)機(jī)效果 484
22.1 基本原理分析 484
22.1.1 Windows關(guān)機(jī)效果分析 484
22.1.2 網(wǎng)頁中實(shí)現(xiàn)關(guān)機(jī)效果分析 485
22.2 代碼實(shí)現(xiàn) 487
22.2.1 客戶端代碼 487
22.2.2 客戶端腳本 488
22.2.3 封裝lightbox類 490
22.3 服務(wù)器端代碼 492
附錄A JavaScript關(guān)鍵字和保留字 494
A.1 關(guān)鍵字 494
A.2 保留字 494
附錄B prototype-1.4.0框架詳解 495
B.1 基礎(chǔ)工具類 495
B.1.1 Prototype對(duì)象 495
B.1.2 Class對(duì)象 496
B.1.3 對(duì)Object類的擴(kuò)展 497
B.1.4 對(duì)Function類的擴(kuò)展 498
B.1.5 對(duì)Number類的擴(kuò)展 499
B.1.6 Try對(duì)象 500
B.1.7 其他工具 500
B.2 定時(shí)器類 500
B.3 基礎(chǔ)工具類 501
B.3.1 $()方法 502
B.3.2 對(duì)String類(字符串)的擴(kuò)展 502
B.3.3 Enumerable(可枚舉)接口 503
B.3.4 $A()函數(shù) 506
B.3.5 對(duì)Array類(數(shù)組)的擴(kuò)展 507
B.3.6 新的哈希(Hash)對(duì)象 507
B.3.7 使用$H()函數(shù)獲取Hash對(duì)象 508
B.3.8 新的ObjectRange類 508
B.3.9 使用$R()方法快速創(chuàng)建ObjectRange對(duì)象 508
B.4 Ajax模塊 509
B.4.1 Ajax對(duì)象 509
B.4.2 Ajax.Responders對(duì)象 509
B.4.3 Ajax.Base類 510
B.4.4 Ajax.Request類 510
B.4.5 Ajax.Updater類 511
B.4.6 Ajax.PeriodicalUpdater類 512
B.5 對(duì)文檔操作的封裝 512
B.5.1 使用document.getElementsByClassName方法 512
B.5.2 Element對(duì)象 513
B.5.3 Toggle對(duì)象 514
B.5.4 Insertion命名空間 514
B.5.5 Element.ClassNames類 515
B.6 表單操作 516
B.6.1 Field對(duì)象 516
B.6.2 Form對(duì)象 516
B.6.3 Form.Element對(duì)象 516
B.6.4 Form.Element.Serializers對(duì)象 517
B.6.5 使用$F()函數(shù)獲取表單域的值 517
B.7 Observer模式框架 517
B.7.1 Abstract.TimedObserver類 517
B.7.2 Form.Element.Observer類 518
B.7.3 Form.Observer類 518
B.7.4 Abstract.EventObserver類 518
B.7.5 Form.Element.EventObserver類 519
B.7.6 Form.Observer類 519
B.8 事件處理:對(duì)Event對(duì)象的擴(kuò)展 519
B.9 結(jié)點(diǎn)的位置處理:Position對(duì)象 520

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)