Ajax高级程序设计
2008-7
人民邮电出版社
(美)扎卡斯,(美)麦克皮克,(美)福西特 著,徐锋 等译
513
890000
无
本书是Ajax 领域的名著,详细讲解了帧、JavaScript、cookie、XML 和XHR 如何与Ajax 相关,以及具体的Ajax 技术实现;介绍了各种请求类型,给出了具有一定深度的有关如何以及何时在Web 站点或Web 应用程序中使用Ajax 的示例,以及各种数据传输格式及其优缺点;介绍了较为复杂的请求管理框架和Ajax 调试技术;讲述了两个完整的AjaxWeb 应用程序的创建过程。 本书适用于各层Web 开发人员。
Nicholas C.Zakas,世界级JavaScript程序员,目前在雅虎担任前端工程师。除本书外,他还是热门畅销书《JavaScript高级程序设计》(人民邮电出版社)一书的作者。
第1章 什么是Ajax 1.1 Ajax的诞生 1.2 Web的演化过程 1.2.1 JavaScript 1.2.2 帧 1.2.3 隐藏帧技术 1.2.4 动态HTML和DOM 1.2.5 iframe 1.2.6 XMLHttp 1.3 真正的Ajax 1.4 Ajax原则 1.5 Ajax背后的技术 1.6 谁在使用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 困惑与争议 1.8 Ajax和Web 2.0 1.9 小结 第2章 Ajax基础 2.1 HTTP基础 2.1.1 HTTP请求 2.1.2 HTTP响应 2.2 Ajax通信技术 2.2.1 隐藏帧技术 2.2.2 XMLHttpRequest 2.2.3 基于图像的Ajax 2.2.4 动态脚本载入 2.3 缓存控制 2.4 小结 第3章 Ajax模式 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.1.9 附加信息链接示例 3.2 失效处理模式 3.2.1 取消待处理的请求 3.2.2 重试 3.3 小结 第4章 Ajax程序库 4.1 Yahoo!连接管理器 4.1.1 安装 4.1.2 基本请求 4.1.3 回调对象 4.1.4 请求的监控和管理 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对象 4.2.2 Options对象 4.2.3 GET示例 4.2.4 POST示例 4.2.5 Ajax.Updater对象 4.2.6 Ajax.Responders对象 4.2.7 优点与缺点 4.3 jQuery 4.3.1 简单的jQuery表达式 4.3.2 执行GET请求 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 小结 第5章 请求管理 5.1 优先级队列 5.2 RequestManager对象 5.2.1 请求描述对象 5.2.2 对请求进行排队 5.2.3 发送请求 5.2.4 取消请求 5.2.5 基于等待时间的优先级提升 5.2.6 处理Ajax模式 5.3 使用RequestManager 5.4 小结 第6章 XML、XPath和XSLT 6.1 浏览器对XML的支持 6.1.1 IE中的XML DOM 6.1.2 其他浏览器中的XML 6.1.3 跨浏览器兼容的XML 6.1.4 一个基本的XML示例 6.2 浏览器对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 浏览器对XSLT的支持 6.3.1 XSLT概述 6.3.2 IE中的XSLT 6.3.3 其他浏览器中的XSLT 6.3.4 跨浏览器兼容的XSLT 6.3.5 回顾“最佳选择”功能 6.4 小结 第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 获取数据 7.3.3 抽象类 7.4 创建一个新闻接收器 7.4.1 服务器端组件 7.4.2 客户端组件 7.4.3 设置新闻的样式 7.4.4 使用新闻接收器部件 7.5 基于RSS的Web搜索 7.5.1 服务器端组件 7.5.2 客户端组件 7.5.3 定制Web搜索部件 7.5.4 使用Web搜索部件 7.6 小结 第8章 JSON 8.1 什么是JSON 8.1.1 数组字面量 8.1.2 对象字面量 8.1.3 混合字面量 8.1.4 JSON语法 8.1.5 JSON编码和解码 8.2 JSON与XML 8.3 服务端JSON工具 8.3.1 JSON-PHP 8.3.2 其他工具 8.4 创建自动建议文本框 8.4.1 功能概述 8.4.2 HTML部分 8.4.3 数据库表 8.4.4 架构 8.4.5 类 8.4.6 自动建议控件 8.4.7 建议提供程序 8.4.8 服务器端组件 8.4.9 客户端组件 8.5 小结 第9章 Comet 9.1 HTTP流 9.1.1 请求延时 9.1.2 文件修改示例 9.1.3 使用iframe 9.1.4 浏览器特定的方法 9.1.5 服务器端发送的DOM事件 9.2 连接管理 9.3 服务器端支持 9.4 小结 第10章 地图和mashup 10.1 mashup的出现 10.2 地理编码 10.2.1 地理编码网站 10.2.2 地理编码服务 10.3 Google Maps API 10.3.1 它是如何工作的 10.3.2 开始动手 10.3.3 Google Maps基础 10.3.4 控件 10.3.5 移动地图 10.3.6 信息窗口 10.3.7 事件 10.3.8 覆盖图 10.3.9 其他 10.4 Yahoo! Maps API 10.4.1 开始动手 10.4.2 Yahoo! Maps基础 10.4.3 控件 10.4.4 移动地图 10.4.5 智能窗口 10.4.6 事件 10.4.7 覆盖图 10.4.8 地址查找 10.4.9 其他 10.5 其他地图服务API 10.6 小结 第11章 Ajax调试工具 11.1 难点 11.2 FireBug 11.2.1 安装与配置 11.2.2 操作界面 11.2.3 XHR日志 11.2.4 基于FireBug的Ajax调试 11.2.5 FireBug的局限性 11.3 Microsoft Fiddler 11.3.1 安装与配置 11.3.2 操作界面 11.3.3 HTTP断点 11.3.4 基于Fiddler的Ajax调试 11.4 小结 第12章 网站的用户界面组件 12.1 创建天气用户界面组件 12.1.1 Weather.com SDK 12.1.2 服务端组件 12.1.3 客户端组件 12.1.4 从服务器获取数据 12.1.5 定制天气用户界面组件 12.1.6 将天气用户界面组件配置为应用程序 12.1.7 将天气用户界面组件添加到Web页面中 12.2 监测股票 12.2.1 获取雅虎财经信息 12.2.2 股票行情代理 12.2.3 客户端组件:AjaxStockWatcher类 12.2.4 定制股票行情 12.2.5 使用股票监测器用户界面组件 12.3 创建网站搜索用户界面组件 12.3.1 服务器端组件 12.3.2 客户端组件 12.3.3 定制网站搜索用户界面组件 12.3.4 将网站搜索用户界面组件添加到页面中 12.4 小结 第13章 Ajax框架 13.1 JPSpan 13.1.1 使用JPSpan 13.1.2 JPSpan应用示例 13.1.3 JPSpan小结 13.2 DWR 13.2.1 使用DWR 13.2.2 DWR示例 13.2.3 dwr.xml中的更多配置项 13.2.4 DWR小结 13.3 Ajax.NET专业版 13.3.1 使用Ajax.NET专业版 13.3.2 类型转换 13.3.3 会话访问 13.3.4 Ajax.NET专业版示例 13.3.5 Ajax.NET专业版小结 13.4 小结 第14章 ASP.NET AJAX扩展(Atlas) 14.1 系统需求与设置 14.2 AJAX客户端程序库 14.2.1 在ASP.NET中访问客户端工具 14.2.2 在ASP.NET外使用客户端工具 14.2.3 使用类 14.2.4 编写使用ASP.NET AJAX程序库的代码 14.2.5 使用控件 14.2.6 发起HTTP请求 14.3 更新面板控件 14.3.1 在页面中添加更新面板 14.3.2 为更新面板添加内容 14.3.3 触发更新 14.3.4 完成所有任务 14.4 重新开发网站搜索用户界面组件 14.4.1 用户界面 14.4.2 开始动手 14.4.3 定义表单 14.4.4 执行搜索 14.4.5 清除搜索结果 14.4.6 处理错误 14.4.7 绑定事件 14.5 小结 第15章 案例学习:FooReader.NET 15.1 客户端组件 15.1.1 用户界面 15.1.2 设置用户界面的样式 15.1.3 驱动UI 15.2 服务器端应用程序 15.2.1 可选的范型 15.2.2 实现 15.3 安装与测试 15.4 小结 第16章 案例学习:AjaxMail 16.1 需求 16.2 架构 16.2.1 所使用的资源 16.2.2 数据库表 16.2.3 配置文件 16.2.4 AjaxMailbox类 16.2.5 执行动作 16.3 用户界面 16.3.1 文件夹视图 16.3.2 阅读视图 16.3.3 写视图 16.3.4 布局 16.4 将所有的整合在一起 16.4.1 辅助函数 16.4.2 mailbox对象 16.4.3 回调函数 16.4.4 事件处理器 16.5 最后一步 16.6 小结
第1章 什么是Ajax 在2001年-2005年间,万维网(WWW)涌现出了大量新技术和新方法论,它们赋予了这种曾经静态的媒体以新的生命。在线产品手册和产品目录已不再是主流,而Web应用程序开始成为在线服务的主要形式。与传统网站不同,Web应用程序是为用户提供即时服务的。无论是为了业务流程管理还是个人兴趣,随着用户对更加丰富的功能的期望,开发人员都将转而创建新的交互模、式。 这些不太知名、很少使用的技术在Web测览器中已经存在一段时间了,它们使Web迈出了一大步,彻底推翻了传统的使用模式,当访问新数据或新的应用程序业务逻辑时不再需要重新载入整个页面。各个公司都开始尝试在网页中实现部分内容的动态载入,只向客户端传送一小部分数据,以得到更快速、更好的用户体验。 处于这一运动热潮最前沿的当数Google公司。当搜索引擎被广泛接受之后,Google的工程师们就开始在网站中名为Google Labs的栏目上展示新的尝试。在Google Labs中的许多项目,诸如GoogleSuggest、Google Maps,都只有单个网页,虽然从不卸载页面,但数据不断更新。这些革新着眼于将桌面软件用户界面的各种特色(affordance)迁移到浏览器屏幕范围之中,它们受到了广泛赞誉,引领了Web开发新时代的到来。 无数开源软件和商业化产品都开始考虑利用这种新Web应用程序模型进行开发。这些项目使用JavaScript远程调用、Web远程过程调用、动态更新等各种不同的术语来阐述该技术。但是很快,一个新的术语应运而生了。 1.1 Ajax的诞生 2005年2月,Adaptive Path公司的Jesse James Garrett在网上发表了一篇名为《Ajax:一种Web应用程序开发的新方法》的文章(现在还可以在www.adaptivepath.com/publications/essays/archives/000385。php看到)。在这篇文章中,Garrett阐述了他为什么认为Web应用程序正在填平与传统桌面应用程序之间的鸿沟。他引用了一些新的技术,并以几个Google的项目作为例子,说明了如何将传统的、基于桌面应用程序的用户交互模型应用到Web上。然后他说出了两旬引起广泛兴趣、热情和争论的话: GoogleSuggest和GoogleMaps就是这种新型web应用程序的两个例子,在AdaptivePath公司里,我们将这种理念称为Ajax。这是Asynchronous(异步)JavaScript+XML的简写,它预示着web可能将发生一次根本性的变革。 从此之后,关于Ajax的文章、示例代码以及争议有如潮水一般充斥于整个因特网。开发人员在Blog上的谈论,技术杂志的关注,而许多公司则将这些应用在产品中。但要理解到底什么是Ajax,还必须先了解促使其产生的一些Web技术的演化过程。
《Ajax高级程序设计》(第2版)适用于各层Web 开发人员。
无
要学习AJAX一定要买 的一本书,真的很不错!
这是一本非常好的关于ajax的书。非常受益
Ajax由浅入深,不错
我觉得这本书是目前介绍的比较优秀的一本,起码我看了能把技术讲清楚的这是头一本谢谢
挺不错的。很多技术方面的书,还是老外写的好。
很好的一本书,看后受益很多。。。比书店又便宜,送货速度也快。
包装不错!!
ajax扫盲用它,提高只能通过实践
看来前两章感觉还不错,只可惜是以php为例子来讲解,要是用java讲解就好了,哎~~。不过总体印象不错~~
里面用的是PHP哦,唯一的遗憾
值得推荐!!
不错的一本书,但是细节问题说的不清,对于初学者来说,个人觉得并不是一本向导书。
单个知识点不是很详细,没展开细致的讲。
只能谁还可以!
听老师说这本书很不错,听朋友也这么说,买回来一看真的是很不错