出版時(shí)間:2008-7 出版社:人民郵電出版社 作者:(美)扎卡斯,(美)麥克皮克,(美)福西特 著,徐鋒 等譯 頁(yè)數(shù):513 字?jǐn)?shù):890000
Tag標(biāo)簽:無(wú)
內(nèi)容概要
本書是Ajax 領(lǐng)域的名著,詳細(xì)講解了幀、JavaScript、cookie、XML 和XHR 如何與Ajax 相關(guān),以及具體的Ajax 技術(shù)實(shí)現(xiàn);介紹了各種請(qǐng)求類型,給出了具有一定深度的有關(guān)如何以及何時(shí)在Web 站點(diǎn)或Web 應(yīng)用程序中使用Ajax 的示例,以及各種數(shù)據(jù)傳輸格式及其優(yōu)缺點(diǎn);介紹了較為復(fù)雜的請(qǐng)求管理框架和Ajax 調(diào)試技術(shù);講述了兩個(gè)完整的AjaxWeb 應(yīng)用程序的創(chuàng)建過程?! ”緯m用于各層Web 開發(fā)人員。
作者簡(jiǎn)介
Nicholas C.Zakas,世界級(jí)JavaScript程序員,目前在雅虎擔(dān)任前端工程師。除本書外,他還是熱門暢銷書《JavaScript高級(jí)程序設(shè)計(jì)》(人民郵電出版社)一書的作者。
書籍目錄
第1章 什么是Ajax 1.1 Ajax的誕生 1.2 Web的演化過程 1.2.1 JavaScript 1.2.2 幀 1.2.3 隱藏幀技術(shù) 1.2.4 動(dòng)態(tài)HTML和DOM 1.2.5 iframe 1.2.6 XMLHttp 1.3 真正的Ajax 1.4 Ajax原則 1.5 Ajax背后的技術(shù) 1.6 誰(shuí)在使用Ajax 1.6.1 Google Suggest 1.6.2 Gmail 1.6.3 Google Maps 1.6.4 A9 1.6.5 Yahoo!News 1.6.6 Bitflux Blog 1.7 困惑與爭(zhēng)議 1.8 Ajax和Web 2.0 1.9 小結(jié) 第2章 Ajax基礎(chǔ) 2.1 HTTP基礎(chǔ) 2.1.1 HTTP請(qǐng)求 2.1.2 HTTP響應(yīng) 2.2 Ajax通信技術(shù) 2.2.1 隱藏幀技術(shù) 2.2.2 XMLHttpRequest 2.2.3 基于圖像的Ajax 2.2.4 動(dòng)態(tài)腳本載入 2.3 緩存控制 2.4 小結(jié) 第3章 Ajax模式 3.1 通信控制模式 3.1.1 預(yù)先獲取 3.1.2 頁(yè)面預(yù)載入示例 3.1.3 提交節(jié)流 3.1.4 表單增量驗(yàn)證示例 3.1.5 字段增量驗(yàn)證示例 3.1.6 定期刷新 3.1.7 新評(píng)論提示示例 3.1.8 多階段下載 3.1.9 附加信息鏈接示例 3.2 失效處理模式 3.2.1 取消待處理的請(qǐng)求 3.2.2 重試 3.3 小結(jié) 第4章 Ajax程序庫(kù) 4.1 Yahoo!連接管理器 4.1.1 安裝 4.1.2 基本請(qǐng)求 4.1.3 回調(diào)對(duì)象 4.1.4 請(qǐng)求的監(jiān)控和管理 4.1.5 表單交互 4.1.6 文件上傳 4.1.7 GET示例 4.1.8 POST示例 4.1.9 其他特性 4.1.10 局限性 4.2 Prototype 4.2.1 Ajax.Request對(duì)象 4.2.2 Options對(duì)象 4.2.3 GET示例 4.2.4 POST示例 4.2.5 Ajax.Updater對(duì)象 4.2.6 Ajax.Responders對(duì)象 4.2.7 優(yōu)點(diǎn)與缺點(diǎn) 4.3 jQuery 4.3.1 簡(jiǎn)單的jQuery表達(dá)式 4.3.2 執(zhí)行GET請(qǐng)求 4.3.3 GET示例 4.3.4 $.post()方法 4.3.5 POST示例 4.3.6 load()方法 4.3.7 $.ajax()方法 4.3.8 ajaxStart()和ajaxStop()方法 4.3.9 局限性 4.4 小結(jié) 第5章 請(qǐng)求管理 5.1 優(yōu)先級(jí)隊(duì)列 5.2 RequestManager對(duì)象 5.2.1 請(qǐng)求描述對(duì)象 5.2.2 對(duì)請(qǐng)求進(jìn)行排隊(duì) 5.2.3 發(fā)送請(qǐng)求 5.2.4 取消請(qǐng)求 5.2.5 基于等待時(shí)間的優(yōu)先級(jí)提升 5.2.6 處理Ajax模式 5.3 使用RequestManager 5.4 小結(jié) 第6章 XML、XPath和XSLT 6.1 瀏覽器對(duì)XML的支持 6.1.1 IE中的XML DOM 6.1.2 其他瀏覽器中的XML 6.1.3 跨瀏覽器兼容的XML 6.1.4 一個(gè)基本的XML示例 6.2 瀏覽器對(duì)XPath的支持 6.2.1 XPath概述 6.2.2 IE中的XPath支持 6.2.3 使用命名空間 6.2.4 其他瀏覽器中的XPath支持 6.2.5 使用命名空間解析器 6.2.6 跨瀏覽器兼容的XPath 6.3 瀏覽器對(duì)XSLT的支持 6.3.1 XSLT概述 6.3.2 IE中的XSLT 6.3.3 其他瀏覽器中的XSLT 6.3.4 跨瀏覽器兼容的XSLT 6.3.5 回顧“最佳選擇”功能 6.4 小結(jié) 第7章 基于RSS/Atom的聚合 7.1 RSS 7.1.1 RSS 0.91 7.1.2 RSS 1.0 7.1.3 RSS 2.0 7.2 Atom 7.3 XParser 7.3.1 xparser命名空間 7.3.2 獲取數(shù)據(jù) 7.3.3 抽象類 7.4 創(chuàng)建一個(gè)新聞接收器 7.4.1 服務(wù)器端組件 7.4.2 客戶端組件 7.4.3 設(shè)置新聞的樣式 7.4.4 使用新聞接收器部件 7.5 基于RSS的Web搜索 7.5.1 服務(wù)器端組件 7.5.2 客戶端組件 7.5.3 定制Web搜索部件 7.5.4 使用Web搜索部件 7.6 小結(jié) 第8章 JSON 8.1 什么是JSON 8.1.1 數(shù)組字面量 8.1.2 對(duì)象字面量 8.1.3 混合字面量 8.1.4 JSON語(yǔ)法 8.1.5 JSON編碼和解碼 8.2 JSON與XML 8.3 服務(wù)端JSON工具 8.3.1 JSON-PHP 8.3.2 其他工具 8.4 創(chuàng)建自動(dòng)建議文本框 8.4.1 功能概述 8.4.2 HTML部分 8.4.3 數(shù)據(jù)庫(kù)表 8.4.4 架構(gòu) 8.4.5 類 8.4.6 自動(dòng)建議控件 8.4.7 建議提供程序 8.4.8 服務(wù)器端組件 8.4.9 客戶端組件 8.5 小結(jié) 第9章 Comet 9.1 HTTP流 9.1.1 請(qǐng)求延時(shí) 9.1.2 文件修改示例 9.1.3 使用iframe 9.1.4 瀏覽器特定的方法 9.1.5 服務(wù)器端發(fā)送的DOM事件 9.2 連接管理 9.3 服務(wù)器端支持 9.4 小結(jié) 第10章 地圖和mashup 10.1 mashup的出現(xiàn) 10.2 地理編碼 10.2.1 地理編碼網(wǎng)站 10.2.2 地理編碼服務(wù) 10.3 Google Maps API 10.3.1 它是如何工作的 10.3.2 開始動(dòng)手 10.3.3 Google Maps基礎(chǔ) 10.3.4 控件 10.3.5 移動(dòng)地圖 10.3.6 信息窗口 10.3.7 事件 10.3.8 覆蓋圖 10.3.9 其他 10.4 Yahoo! Maps API 10.4.1 開始動(dòng)手 10.4.2 Yahoo! Maps基礎(chǔ) 10.4.3 控件 10.4.4 移動(dòng)地圖 10.4.5 智能窗口 10.4.6 事件 10.4.7 覆蓋圖 10.4.8 地址查找 10.4.9 其他 10.5 其他地圖服務(wù)API 10.6 小結(jié) 第11章 Ajax調(diào)試工具 11.1 難點(diǎn) 11.2 FireBug 11.2.1 安裝與配置 11.2.2 操作界面 11.2.3 XHR日志 11.2.4 基于FireBug的Ajax調(diào)試 11.2.5 FireBug的局限性 11.3 Microsoft Fiddler 11.3.1 安裝與配置 11.3.2 操作界面 11.3.3 HTTP斷點(diǎn) 11.3.4 基于Fiddler的Ajax調(diào)試 11.4 小結(jié) 第12章 網(wǎng)站的用戶界面組件 12.1 創(chuàng)建天氣用戶界面組件 12.1.1 Weather.com SDK 12.1.2 服務(wù)端組件 12.1.3 客戶端組件 12.1.4 從服務(wù)器獲取數(shù)據(jù) 12.1.5 定制天氣用戶界面組件 12.1.6 將天氣用戶界面組件配置為應(yīng)用程序 12.1.7 將天氣用戶界面組件添加到Web頁(yè)面中 12.2 監(jiān)測(cè)股票 12.2.1 獲取雅虎財(cái)經(jīng)信息 12.2.2 股票行情代理 12.2.3 客戶端組件:AjaxStockWatcher類 12.2.4 定制股票行情 12.2.5 使用股票監(jiān)測(cè)器用戶界面組件 12.3 創(chuàng)建網(wǎng)站搜索用戶界面組件 12.3.1 服務(wù)器端組件 12.3.2 客戶端組件 12.3.3 定制網(wǎng)站搜索用戶界面組件 12.3.4 將網(wǎng)站搜索用戶界面組件添加到頁(yè)面中 12.4 小結(jié) 第13章 Ajax框架 13.1 JPSpan 13.1.1 使用JPSpan 13.1.2 JPSpan應(yīng)用示例 13.1.3 JPSpan小結(jié) 13.2 DWR 13.2.1 使用DWR 13.2.2 DWR示例 13.2.3 dwr.xml中的更多配置項(xiàng) 13.2.4 DWR小結(jié) 13.3 Ajax.NET專業(yè)版 13.3.1 使用Ajax.NET專業(yè)版 13.3.2 類型轉(zhuǎn)換 13.3.3 會(huì)話訪問 13.3.4 Ajax.NET專業(yè)版示例 13.3.5 Ajax.NET專業(yè)版小結(jié) 13.4 小結(jié) 第14章 ASP.NET AJAX擴(kuò)展(Atlas) 14.1 系統(tǒng)需求與設(shè)置 14.2 AJAX客戶端程序庫(kù) 14.2.1 在ASP.NET中訪問客戶端工具 14.2.2 在ASP.NET外使用客戶端工具 14.2.3 使用類 14.2.4 編寫使用ASP.NET AJAX程序庫(kù)的代碼 14.2.5 使用控件 14.2.6 發(fā)起HTTP請(qǐng)求 14.3 更新面板控件 14.3.1 在頁(yè)面中添加更新面板 14.3.2 為更新面板添加內(nèi)容 14.3.3 觸發(fā)更新 14.3.4 完成所有任務(wù) 14.4 重新開發(fā)網(wǎng)站搜索用戶界面組件 14.4.1 用戶界面 14.4.2 開始動(dòng)手 14.4.3 定義表單 14.4.4 執(zhí)行搜索 14.4.5 清除搜索結(jié)果 14.4.6 處理錯(cuò)誤 14.4.7 綁定事件 14.5 小結(jié) 第15章 案例學(xué)習(xí):FooReader.NET 15.1 客戶端組件 15.1.1 用戶界面 15.1.2 設(shè)置用戶界面的樣式 15.1.3 驅(qū)動(dòng)UI 15.2 服務(wù)器端應(yīng)用程序 15.2.1 可選的范型 15.2.2 實(shí)現(xiàn) 15.3 安裝與測(cè)試 15.4 小結(jié) 第16章 案例學(xué)習(xí):AjaxMail 16.1 需求 16.2 架構(gòu) 16.2.1 所使用的資源 16.2.2 數(shù)據(jù)庫(kù)表 16.2.3 配置文件 16.2.4 AjaxMailbox類 16.2.5 執(zhí)行動(dòng)作 16.3 用戶界面 16.3.1 文件夾視圖 16.3.2 閱讀視圖 16.3.3 寫視圖 16.3.4 布局 16.4 將所有的整合在一起 16.4.1 輔助函數(shù) 16.4.2 mailbox對(duì)象 16.4.3 回調(diào)函數(shù) 16.4.4 事件處理器 16.5 最后一步 16.6 小結(jié)
章節(jié)摘錄
第1章 什么是Ajax 在2001年-2005年間,萬(wàn)維網(wǎng)(WWW)涌現(xiàn)出了大量新技術(shù)和新方法論,它們賦予了這種曾經(jīng)靜態(tài)的媒體以新的生命。在線產(chǎn)品手冊(cè)和產(chǎn)品目錄已不再是主流,而Web應(yīng)用程序開始成為在線服務(wù)的主要形式。與傳統(tǒng)網(wǎng)站不同,Web應(yīng)用程序是為用戶提供即時(shí)服務(wù)的。無(wú)論是為了業(yè)務(wù)流程管理還是個(gè)人興趣,隨著用戶對(duì)更加豐富的功能的期望,開發(fā)人員都將轉(zhuǎn)而創(chuàng)建新的交互模、式?! ∵@些不太知名、很少使用的技術(shù)在Web測(cè)覽器中已經(jīng)存在一段時(shí)間了,它們使Web邁出了一大步,徹底推翻了傳統(tǒng)的使用模式,當(dāng)訪問新數(shù)據(jù)或新的應(yīng)用程序業(yè)務(wù)邏輯時(shí)不再需要重新載入整個(gè)頁(yè)面。各個(gè)公司都開始嘗試在網(wǎng)頁(yè)中實(shí)現(xiàn)部分內(nèi)容的動(dòng)態(tài)載入,只向客戶端傳送一小部分?jǐn)?shù)據(jù),以得到更快速、更好的用戶體驗(yàn)?! √幱谶@一運(yùn)動(dòng)熱潮最前沿的當(dāng)數(shù)Google公司。當(dāng)搜索引擎被廣泛接受之后,Google的工程師們就開始在網(wǎng)站中名為Google Labs的欄目上展示新的嘗試。在Google Labs中的許多項(xiàng)目,諸如GoogleSuggest、Google Maps,都只有單個(gè)網(wǎng)頁(yè),雖然從不卸載頁(yè)面,但數(shù)據(jù)不斷更新。這些革新著眼于將桌面軟件用戶界面的各種特色(affordance)遷移到瀏覽器屏幕范圍之中,它們受到了廣泛贊譽(yù),引領(lǐng)了Web開發(fā)新時(shí)代的到來(lái)?! o(wú)數(shù)開源軟件和商業(yè)化產(chǎn)品都開始考慮利用這種新Web應(yīng)用程序模型進(jìn)行開發(fā)。這些項(xiàng)目使用JavaScript遠(yuǎn)程調(diào)用、Web遠(yuǎn)程過程調(diào)用、動(dòng)態(tài)更新等各種不同的術(shù)語(yǔ)來(lái)闡述該技術(shù)。但是很快,一個(gè)新的術(shù)語(yǔ)應(yīng)運(yùn)而生了?! ?.1 Ajax的誕生 2005年2月,Adaptive Path公司的Jesse James Garrett在網(wǎng)上發(fā)表了一篇名為《Ajax:一種Web應(yīng)用程序開發(fā)的新方法》的文章(現(xiàn)在還可以在www.adaptivepath.com/publications/essays/archives/000385。php看到)。在這篇文章中,Garrett闡述了他為什么認(rèn)為Web應(yīng)用程序正在填平與傳統(tǒng)桌面應(yīng)用程序之間的鴻溝。他引用了一些新的技術(shù),并以幾個(gè)Google的項(xiàng)目作為例子,說(shuō)明了如何將傳統(tǒng)的、基于桌面應(yīng)用程序的用戶交互模型應(yīng)用到Web上。然后他說(shuō)出了兩旬引起廣泛興趣、熱情和爭(zhēng)論的話: GoogleSuggest和GoogleMaps就是這種新型web應(yīng)用程序的兩個(gè)例子,在AdaptivePath公司里,我們將這種理念稱為Ajax。這是Asynchronous(異步)JavaScript+XML的簡(jiǎn)寫,它預(yù)示著web可能將發(fā)生一次根本性的變革?! 拇酥?,關(guān)于Ajax的文章、示例代碼以及爭(zhēng)議有如潮水一般充斥于整個(gè)因特網(wǎng)。開發(fā)人員在Blog上的談?wù)摚夹g(shù)雜志的關(guān)注,而許多公司則將這些應(yīng)用在產(chǎn)品中。但要理解到底什么是Ajax,還必須先了解促使其產(chǎn)生的一些Web技術(shù)的演化過程。
編輯推薦
《Ajax高級(jí)程序設(shè)計(jì)》(第2版)適用于各層Web 開發(fā)人員。
圖書封面
圖書標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載
Ajax高級(jí)程序設(shè)計(jì) PDF格式下載