Ajax高级程序设计

发布 2021-05-05 21:04:28 阅读 4881

作者简介。

nicholas c.zakas,世界级j**ascript程序员,目前在雅虎担任前端工程师。除本书外,他还是热门畅销书《j**ascript高级程序设计》(人民邮电出版社)一书的作者。

编辑推荐。j**a script高级程序设计》姊妹篇;兼顾php、j**a和。net平台,涵盖最新ajax技术。“非常全面的实战图书。学习ajax唯一必买的书。”

—资深web开发人员,frank stepanski

本书很好地兼顾了理论和实践,web程序员均将从中获益匪浅。”—jason salas,微软mvp

ajax结合了thtml、css和j**ascript等技术。使web开发人员能够创建更复杂、响应更及时的用户界面。为用户带来更加丰富的使用体验。

本书是世界级web专家nicholas 继名作《j**ascript高级程序设计》之后,推出的又一本。

amazon畅销书。第2版仍然以深入浅出的方式讲解了ajaxe,备的编程知识,包括工作原理、模式和数据格式,为读者打下扎实的基础。同时更涵盖了众多重要的新内容:

热门的ajax/j**ascript库:yui、prototype和jquerycomet和rest技术。

mashup和web部件(widget)的开发使用firebug和microsoft fiddler调试程序。

本书简介。本书是ajax 领域的名著,详细讲解了帧、j**ascript、cookie、xml 和xhr 如何与ajax 相关,以及具体的ajax 技术实现;介绍了各种请求类型,给出了具有一定深度的有关如何以及何时在web 站点或web 应用程序中使用ajax 的示例,以及各种数据传输格式及其优缺点;介绍了较为复杂的请求管理框架和ajax 调试技术;讲述了两个完整的ajaxweb 应用程序的创建过程。 本书适用于各层web开发人员。

目录。第1章什么是ajax1.1 ajax的诞生。

1.2 web的演化过程1.2.1 j**ascript1.2.2 帧。

1.2.3 隐藏帧技术。

1.2.4 动态html和dom1.2.5 iframe1.2.6 xmlhttp1.3 真正的ajax1.4 ajax原则。

1.5 ajax背后的技术1.6 谁在使用ajax1.6.1 google suggest1.6.2 gmail

1.6.3 google maps1.6.4 a9

1.6.5 yahoo!news1.6.6 bitflux blog1.7 困惑与争议1.8 ajax和web 2.01.9 小结。

第2章 ajax基础2.1 http基础2.1.1 http请求2.1.2 http响应。

2.2 ajax通信技术2.2.1 隐藏帧技术。

2.2.2 xmlhttprequest2.2.3 基于图像的ajax2.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 对象4.2.2 options对象4.2.3 get示例4.2.4 post示例。

4.2.5 对象4.2.6 对象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 使用requestmanager5.4 小结。

第6章 xml、xpath和xslt6.1 浏览器对xml的支持6.1.

1 ie中的xml dom6.1.2 其他浏览器中的xml6.

1.3 跨浏览器兼容的xml6.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 跨浏览器兼容的xpath6.3 浏览器对xslt的支持6.3.

1 xslt概述6.3.2 ie中的xslt

6.3.3 其他浏览器中的xslt6.3.4 跨浏览器兼容的xslt6.3.5 回顾“最佳选择”功能6.4 小结。

第7章基于rss/atom的聚合7.1 rss

7.1.1 rss 0.917.1.2 rss 1.07.1.3 rss 2.07.2 atom7.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 什么是json8.1.1 数组字面量8.1.2 对象字面量8.1.3 混合字面量8.1.4 json语法。

8.1.5 json编码和解码8.2 json与xml8.3 服务端json工具8.3.1 json-php8.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章 comet9.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章地图和mashup10.1 mashup的出现10.2 地理编码。

10.2.1 地理编码**10.2.2 地理编码服务10.3 google maps api10.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 api10.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 其他地图服务api10.6 小结。

第11章 ajax调试工具11.1 难点。

11.2 firebug11.2.1 安装与配置11.2.2 操作界面11.2.3 xhr日志。

11.2.4 基于firebug的ajax调试11.

2.5 firebug的局限性11.3 microsoft fiddler11.

3.1 安装与配置11.3.

2 操作界面11.3.3 http断点。

11.3.4 基于fiddler的ajax调试11.4 小结。

第12章**的用户界面组件12.1 创建天气用户界面组件12.1.1 sdk12.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 使用jpspan13.1.2 jpspan应用示例13.1.3 jpspan小结13.2 dwr

13.2.1 使用dwr13.2.2 dwr示例。

13.2.3 中的更多配置项13.2.4 dwr小结13.3 专业版。

13.3.1 使用专业版13.3.2 类型转换13.3.3 会话访问。

13.3.4 专业版示例13.3.5 专业版小结13.4 小结。

第14章 ajax扩展(atlas)14.1 系统需求与设置14.2 ajax客户端程序库。

14.2.1 在中访问客户端工具14.2.2 在外使用客户端工具14.2.3 使用类。

14.2.4 编写使用 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章案例学习:

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章案例学习:ajaxmail16.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

在2024年-2024年间,万维网(www)涌现出了大量新技术和新方**,它们赋予了这种曾经静态的**以新的生命。**产品手册和产品目录已不再是主流,而web应用程序开始成为**服务的主要形式。与传统**不同,web应用程序是为用户提供即时服务的。

无论是为了业务流程管理还是个人兴趣,随着用户对更加丰富的功能的期望,开发人员都将转而创建新的交互模、式。这些不太知名、很少使用的技术在web测览器中已经存在一段时间了,它们使web迈出了一大步,彻底推翻了传统的使用模式,当访问新数据或新的应用程序业务逻辑时不再需要重新载入整个页面。各个公司都开始尝试在网页中实现部分内容的动态载入,只向客户端传送一小部分数据,以得到更快速、更好的用户体验。

处于这一运动热潮最前沿的当数google公司。当搜索引擎被广泛接受之后,google的工程师们就开始在**中名为google labs的栏目上展示新的尝试。在google labs中的许多项目,诸如。

googlesuggest、google maps,都只有单个网页,虽然从不卸载页面,但数据不断更新。这些革新着眼于将桌面软件用户界面的各种特色(affordance)迁移到浏览器屏幕范围之中,它们受到了广泛赞誉,引领了web开发新时代的到来。

无数开源软件和商业化产品都开始考虑利用这种新web应用程序模型进行开发。这些项目使用j**ascript远程调用、web远程过程调用、动态更新等各种不同的术语来阐述该技术。但是很快,一。

个新的术语应运而生了。1.1 ajax的诞生。

2024年2月,adaptive path公司的jesse james garrett在网上发表了一篇名为《ajax:一种web应用程序开发的新方法》的文章(现在还可以在看到)。在这篇文章中,garrett阐述了他为什么认为web应用程序正在填平与传统桌面应用程序之间的鸿沟。

他引用了一些新的技术,并以几个google的项目作为例子,说明了如何将传统的、基于桌面应用程序的用户交互模型应用到web上。然后他说出了两旬引起广泛兴趣、热情和争论的话:

googlesuggest和googlemaps就是这种新型web应用程序的两个例子,在adaptivepath公司里,我们将这种理念称为ajax。这是asynchronous(异步)j**ascript+xml的简写,它预示着web可能将发生一次根本性的变革。

从此之后,关于ajax的文章、示例**以及争议有如潮水一般充斥于整个因特网。开发人员在。

blog上的谈论,技术杂志的关注,而许多公司则将这些应用在产品中。但要理解到底什么是ajax,还必须先了解促使其产生的一些web技术的演化过程。……

高级程序设计

信息与通信工程学院。高级程序设计 实验报告。学号 s314080098 专业 信息与通信工程 学生姓名 李长玺。任课教师 杨志钢。2015年3月。实验一。一 任务描述。1 设计一个带头结点的单链表,并随机生成一组序列,存入该单链表中。2 针对上一步生成的单链表,编写算法,将其中的数据元素按照值递增的...

高级程序设计

高级程序设计 是为电子商务专业学生开设的专业基础课程。开设高级程序设计课程的目的是,进行程序设计和面向对象方法的基础训练 应用新技术开发各种适用于网络环境的应用程序。本课程前导课程为 无。本课程后续课程为 旅游管理软件开发技术 旅游移动客户端设计与应用 景区app设计与应用。本课程的功能是通过课堂教...

高级语言程序设计

总分 100.00,做题时间 90分钟 一 单项选择题 总题数 15,分数 30.00 语言早期规定建立文件缓冲区采用的形式是 分数 2.00 a.缓冲文件系统。b.非缓冲文件系统。c.分页文件系统。解析 2.以下是对二维数组的正确说明的是 分数 2.00 a 3,4 a 1 4 a 3 4 解析 ...