《Ajax实战 实例详解》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:(英)格雷恩等著,贺师俊等译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2008
  • ISBN:9787115187659
  • 页数:382 页
图书介绍:本书堪称Ajax领域内的典范之作,深受读者好评。它以Ajax的简要介绍开篇,然后以知识点为脉络,讲述了几十个易于使用的、以解决方案为重点的实例,并针对每一个实例给出了详细的范例代码,可操作性极强。通过本书,读者可以学会如何实现富客户端用户界面,包括拖拽、实践性策略、有效导航、事件处理、表单项目验证、状态管理、如何选择Ajax库、访问第三方的开放网络服务接口等等。最后,本书以一个妙趣横生且极其实用的mashup实例结尾。

第一部分 Ajax基础 2

第1章 拥抱Ajax 2

1.1 Ajax,一种颠覆性的技术 3

1.1.1 重新定义用户的工作流程 3

1.1.2 重新定义Web应用的架构 4

1.2 Ajax快速入门 6

1.2.1 XMLHttpRequest简介 6

1.2.2 实例化XMLHttpRequest 7

1.2.3 发送请求 8

1.2.4 处理响应 9

1.2.5 XMLHttpRequest的其他方法和属性 10

1.3 使用框架简化Ajax 11

1.3.1 用Prototype库中的Ajax.Request对象创建请求 12

1.3.2 简化Ajax响应 15

1.4 总结 18

第2章 Ajax的通信方式 19

2.1 在服务器端生成JavaScript 19

2.1.1 执行由服务器生成的代码 19

2.1.2 遵循代码生成的实践准则 21

2.2 JSON简介 25

2.2.1 在服务器上生成JSON 26

2.2.2 使用JSON往返传输数据 29

2.3 在Ajax中使用XML和XSLT 33

2.3.1 解析服务器生成的XML 34

2.3.2 用XSLT和XPath来更好地处理XML 38

2.4 在Web服务中使用Ajax 43

2.5 总结 49

第3章 面向对象的JavaScript与Prototype库 50

3.1 面向对象的JavaScript 51

3.1.1 对象的基本原理 51

3.1.2 函数是一等公民 53

3.1.3 对象构造器和方法 58

3.1.4 编写JavaScript类:一个按钮 63

3.2 Prototype程序库 74

3.2.1 常用的函数和扩展 75

3.2.2 对数组的扩展 76

3.2.3 Hash类 78

3.2.4 给函数绑定上下文对象 79

3.2.5 面向对象的Prototype 80

3.2.6 用Prototype重写Button类 86

3.3 总结 89

第4章 Ajax开源工具集 90

4.1 Dojo工具包 90

4.1.1 用Dojo进行异步请求 91

4.1.2 用Dojo自动对表单进行编组 94

4.2 Prototype 96

4.2.1 Prototype中的异步请求 96

4.2.2 用Prototype进行自动更新 100

4.2.3 用Prototype进行定期更新 102

4.3 jQuery 104

4.3.1 jQuery基础 104

4.3.2 用jQuery进行异步加载 106

4.3.3 用jQuery获取动态数据 110

4.4 DWR 113

4.5 总结 120

第二部分 Ajax最佳实践 124

第5章 事件处理 124

5.1 事件处理模型 125

5.1.1 基本的事件处理注册 125

5.1.2 高级事件处理 128

5.2 Event对象与事件传播机制 130

5.2.1 Event对象 130

5.2.2 事件的传播 131

5.3 使用Prototype进行事件处理 135

5.4 事件类型 137

5.4.1 鼠标事件 137

5.4.2 键盘事件 138

5.4.3 change事件 141

5.4.4 页面事件 142

5.5 事件处理实践 144

5.5.1 在服务端验证文本字段 144

5.5.2 无需页面重新加载的表单元素提交方式 148

5.5.3 只提交发生改变的元素 151

5.6 总结 153

第6章 表单验证与提交 154

6.1 客户端表单验证 154

6.1.1 在客户端进行验证 154

6.1.2 即时验证 159

6.1.3 跨字段验证 160

6.2 投递数据 166

6.2.1 POST请求剖析 167

6.2.2 将数据投递到服务器 168

6.2.3 将表单数据投递到服务器 171

6.2.4 检测表单数据变化 173

6.3 总结 179

第7章 内容导航 180

7.1 网站导航原理 180

7.1.1 大海捞“针” 180

7.1.2 创造更好的“针”探 182

7.1.3 导航和Ajax 184

7.2 传统的Web导航 185

7.2.1 一个简单的导航菜单 185

7.2.2 DHTML菜单 187

7.3 借鉴桌面应用的导航设施 190

7.3.1 使用qooxdoo库实现Tab组件 191

7.3.2 qooxdoo工具栏和窗口 193

7.3.3 qooxdoo树组件 196

7.4 桌面应用和Web应用的折中 200

7.4.1 OpenRico库的Accordion控件 200

7.4.2 创建HTML友好的树控件 203

7.5 总结 209

第8章 处理后退、刷新和撤销 210

8.1 禁止用户访问浏览器的导航控件 210

8.1.1 移除浏览器导航工具栏 210

8.1.2 捕捉快捷键 212

8.1.3 禁止右键弹出上下文菜单 212

8.1.4 阻止用户导航历史记录或刷新页面 212

8.2 与浏览器导航控件协作 216

8.2.1 使用JavaScript内建的history对象 216

8.2.2 使用Hash对象实现书签 217

8.2.3 RSH框架介绍 218

8.2.4 使用RSH框架维护客户端状态 219

8.2.5 使用RSH在服务端维护应用程序状态 222

8.3 处理撤销操作 227

8.3.1 何时提供可撤销功能 227

8.3.2 实现一个可撤销/恢复操作栈 227

8.3.3 扩展撤销栈以支持更复杂的用户操作 232

8.4 总结 240

第9章 拖放 241

9.1 支持拖放的JavaScript框架 242

9.2 Ajax应用中的拖放 243

9.2.1 支持拖放的Ajax购物车示例 243

9.2.2 拖放列表中的数据操纵 249

9.2.3 使用ICEfaces创建Ajax购物车 253

9.3 总结 261

第10章 对用户友好一点 262

10.1 与延迟作斗争 263

10.1.1 以反馈来应对等待 263

10.1.2 显示进度 268

10.1.3 Ajax请求超时 273

10.1.4 处理多次点击 275

10.2 预防和检测输入错误 278

10.2.1 主动显示上下文帮助 278

10.2.2 对表单输入项进行有效性验证 283

10.3 维护焦点和分层顺序 290

10.3.1 维护焦点顺序 290

10.3.2 管理堆叠顺序 294

10.4 总结 299

第11章 状态管理和缓存 300

11.1 客户端状态的维持 301

11.2 服务器数据缓存 303

11.2.1 Java类的数据的交换 303

11.2.2 预取 310

11.3 客户端状态的持久化 313

11.3.1 以JSON形式存储和取回用户状态 313

11.3.2 通过AMASS保存JSON字符串 315

11.4 总结 319

第12章 开放式Web API和Ajax 320

12.1 Yahoo!开发者网络 321

12.1.1 Yahoo!地图 321

12.1.2 跨服务器代理 324

12.1.3 Yahoo!Maps Geocoding 331

12.1.4 Yahoo!交通 335

12.2 Google搜索API 340

12.3 Flickr图片分享 349

12.3.1 Flickr用户内部标识 350

12.3.2 Flickr图片和缩略图 353

12.4 稍等!据说,还有很多 357

12.4.1 Amazon服务 357

12.4.2 eBay服务 357

12.4.3 MapQuest 357

12.4.4 NOAA/国家气象服务 358

12.4.5 更多Web服务接口 358

12.5 总结 358

第13章 使用Ajax进行混搭 359

13.1 Trip-o-matic应用简介 359

13.1.1 应用的目的 359

13.1.2 应用概览和需求 360

13.2 Trip-o-matic的数据文件 360

13.2.1 我们应该采用什么格式 361

13.2.2 旅行数据格式 361

13.2.3 设置Flickr照片集 363

13.3 TripomaticDigester类 363

13.3.1 依赖性检查 364

13.3.2 TripomaticDigester的构造器 364

13.3.3 解读旅行数据 365

13.3.4 加载经典信息 366

13.3.5 收集元素的文本内容 367

13.4 Tripomatic应用类 368

13.4.1 Tripomatic类和构造器 369

13.4.2 创建内容元素 370

13.4.3 填充旅行数据 372

13.4.4 显示地图 374

13.4.5 加载缩略图 375

13.4.6 显示照片 377

13.5 Trip-o-matic应用页面 378

13.5.1 TriP-o-matic的HTML文档 378

13.5.2 样式之旅 379

13.6 总结 381