Ajax基础教程:从初识到精通

需积分: 9 1 下载量 76 浏览量 更新于2024-07-26 收藏 1.53MB PDF 举报
"Ajax基础教程精华版" Ajax,全称Asynchronous JavaScript and XML,是一种创建动态网页的技术,允许在不重新加载整个页面的情况下与服务器交换数据并更新部分网页内容。Ajax的核心在于JavaScript,XML以及浏览器提供的 XMLHttpRequest对象。这篇教程将帮助初学者理解Ajax的基本概念和使用方法。 在Web浏览器的历史部分,我们了解到Web浏览器的发展并非始于Microsoft Internet Explorer。事实上,第一款Web浏览器是由Tim Berners-Lee为NeXT计算机创建的WorldWideWeb(后改为Nexus),在1990年发布。随后,Berners-Lee和Jean-Francois Groff将其移植到C语言,命名为libwww。早期的浏览器还包括Nicola Pellow的行模式浏览器和针对Macintosh的Samba。 1993年,Marc Andreessen和Eric Bina在伊利诺伊大学Urbana-Champaign分校开发的Mosaic是真正推动Web浏览器普及的关键。Mosaic是第一个跨平台的浏览器,它支持图形界面,极大地提升了用户体验,从而变得非常流行。这一技术后来被Spyglass收购,最终演变为Microsoft的Internet Explorer。 在此期间,其他浏览器也逐渐崭露头角,如Lynx,一个在字符终端上使用的文本浏览器,以及Opera,由挪威奥斯陆的团队开发。Netscape的Mozilla浏览器于1994年12月推出,它是首个商业化的浏览器,其开源版本最终演变成了Firefox,至今仍深受用户喜爱。 当Microsoft在1995年发布Windows 95时,附带了IE1.0,这标志着Internet Explorer的诞生。尽管IE与操作系统紧密集成,但起初并未立即获得广泛应用。随着互联网的发展,Ajax技术的出现进一步推动了Web应用程序的交互性和用户体验的提升,尤其是当JavaScript库如jQuery简化了Ajax操作后,开发者可以更轻松地实现动态网页。 学习Ajax的基础,首先需要掌握JavaScript的基本语法,因为Ajax的主要操作是通过JavaScript来实现的。XMLHttpRequest对象是Ajax的核心,用于在后台与服务器进行通信。理解请求和响应的生命周期,包括打开连接、发送请求、接收响应和处理返回的数据,是掌握Ajax的关键。 此外,了解如何处理异步性是另一个重要方面,因为Ajax的“异步”特性意味着用户可以继续浏览网页,而不必等待服务器的响应。这需要掌握回调函数、Promise或者async/await等机制来处理异步操作。 在实际应用中,Ajax常用于实现网页上的无刷新数据更新,比如搜索建议、动态加载内容、表单验证等。学习Ajax还能帮助开发者更好地理解和利用现代Web API,如fetch API,以及如何与服务器进行JSON格式的数据交换,因为现在XML在Ajax传输中已经被JSON所取代。 Ajax是现代Web开发中的重要工具,通过理解其原理和实践,开发者能够构建更加高效、交互性强的网页应用。这篇Ajax基础教程精华版将引导初学者逐步进入这一领域,深入探索Web开发的动态世界。
2014-01-10 上传
原书名:Foundations of Ajax 原出版社: Apress 作者: (美)Ryan Asleson,Nathaniel T.Schutta 译者: 金灵 等 丛书名: 图灵程序设计丛书 出版社:人民邮电出版社 ISBN:7115144818 上架时间:2006-2-14 出版日期:2006 年2月 简介   ajax技术可以提供高度交互的web应用,给予用户更丰富的页面浏览体验。本书重点介绍ajax及相关的工具和技术,主要内容包括xmlhttprequest对象及其属性和方法、发送请求和处理响应、构建完备的ajax开发工具、使用jsunit测试javascript、分析javascript调试工具和技术,以及ajax开发模式和框架等。本书中所有例子的代码都可以从apmss网站本书主页的源代码(source code)免费得到。.   本书适合各层次web应用开发人员和网页设计人员阅读。    2005年,在web 2.0热潮中,ajax横空出世,迅速成为最炙手可热的web开发技术。google、microsoft、amazon和yahoo都已经全面采用ajax,新一代的网站如雨后春笋,迅速兴起。..   什么是ajax? ajax为什么会这么热,它到底有什么奇妙之处?ajax是少数高手才能使用的尖端技术吗?如何用ajax开发全新用户体验的web应用,如何用ajax赋予原有应用新的生命?本书将给你满意的答案!   书中不仅详细讲述了如何结合使用各种标准web技术如javascript、html、css和xmlhttprequest开发ajax应用,而且涵盖了调试、测试、文档、验证等工具,以及相关的模式、框架、应该避免的陷阱。阅读本书,再加上已有的开发经验,你也能在应用中使用超炫的ajax技术,使你的网站立即焕然一新!这一过程将乐趣无穷,我们衷心地希望,有一天能看到你开发的基于ajax的一流应用!... 目录 译者序. 前言 致谢 关于技术审校 第1章 ajax简介 1 1.1 web应用简史 1 1.2 浏览器历史 2 1.3 web应用的发展历程 3 1.3.1 cgi 4 1.3.2 applet 4 1.3.3 javascript 5 1.3.4 servlet、asp和php……哦,太多了! 6 1.3.5 flash 9 1.3.6 dhtml革命 10 1.3.7 xml衍生语言 10 1.3.8 基本问题 12 1.3.9 ajax 13 1.4 可用性问题 17 1.5 相关技术 18 1.6 使用场合 19 .1.7 设计考虑 20 1.8 小结 21 第2章 使用xmlhttprequest对象 23 2.1 xmlhttprequest对象概述 23 2.2 方法和属性 25 2.3 交互示例 26 2.4 get与post 28 2.5 远程脚本 29 2.5.1 远程脚本概述 29 2.5.2 远程脚本的示例 29 2.6 如何发送简单请求 31 2.6.1 简单请求的示例 32 2.6.2 关于安全 34 2.7 dom level 3 加载和保存规约 35 2.8 dom 35 2.9 小结 36 第3章 与服务器通信:发送请求和处理响应 37 3.1 处理服务器响应 37 3.1.1 使用innerhtml属性创建动态内容 37 3.1.2 将响应解析为xml 40 3.1.3 使用w3c dom动态编辑页面 45 3.2 发送请求参数 52 3.2.1 请求参数作为xml发送 59 3.2.2 使用json向服务器发送数据 64 3.3 小结 70 第4章 实现基本ajax技术 71 4.1 完成验证 71 4.2 读取响应首部 75 4.3 动态加载列表框 79 4.4 创建自动刷新页面 85 4.5 显示进度条 90 4.6 创建工具提示 95 4.7 动态更新web页面 101 4.8 访问web服务 110 4.9 提供自动完成 116 4.10 小结 123 第5章 构建完备的ajax开发工具箱 125 5.1 使用jsdoc建立javascript代码的文档 125 5.1.1 安装 126 5.1.2 用法 126 5.2 使用firefox扩展验证html内容 129 5.2.1 html validator 130 5.2.2 checky .. 132 5.3 使用dom inspector搜索节点 133 5.4 使用jslint完成javascript语法检查 137 5.5 完成javascript压缩和模糊处理 138 5.6 使用firefox的web开发扩展 140 5.7 实现高级javascript技术 141 5.7.1 通过prototype属性建立面向对象的javascript 142 5.7.2 私有属性和使用javascript的信息隐藏 146 5.7.3 javascript中基于类的继承 148 5.7.4 汇合 149 5.8 小结 152 第6章 使用jsunit测试javascript代码 155 6.1 javascript提出的问题 155 6.1.1 测试先行方法介绍 155 6.1.2 junit介绍 157 6.2 分析jsunit 158 6.2.1 起步 159 6.2.2 编写测试 159 6.2.3 运行测试 172 6.2.4 使用标准/定制查询串 177 6.2.5 使用jsunit服务器 181 6.2.6 获得帮助 183 6.2.7 还能用什么? 184 6.3 小结 184 第7章 分析javascript调试工具和技术 185 7.1 用greasemonkey调试ajax请求 186 7.1.1 greasemonkey介绍 186 7.1.2 使用greasemonkey xmlhttprequest调试用户脚本 186 7.1.3 使用xmlhttprequest调试用户脚本检查ajax请求和响应 186 7.2 调试javascript 188 7.2.1 使用firefox javascript console 189 7.2.2 使用microsoft script debugger 190 7.2.3 使用venkman 192 7.3 小结 207 第8章 万事俱备 209 8.1 模式介绍 209 8.1.1 实现褪色技术 209 8.1.2 实现自动刷新 210 8.1.3 实现部分页面绘制 210 8.1.4 实现可拖放dom 211 8.2 避免常见的陷阱 212 8.3 相关的更多资源 214 8.4 使用框架 216 8.5 taconite介绍 216 8.5.1 taconite原理 217 8.5.2 解决方案 217 8.5.3 taconite怎么处理内容 219 8.6 dashboard应用介绍 219 8.7 用taconite构建ajax dashboard 221 8.7.1 一般特性介绍 221 8.7.2 设计特性介绍 222 8.7.3 分析代码 224 8.7.4 分析天气预报组件 225 8.7.5 分析标题新闻组件 232 8.7.6 如何完成自动重新刷新工作 235 8.7.7 构建更好的autocomplete 237 8.8 小结 240 附录a 开发跨浏览器javascript 241 a.1 向表中追加行 241 a.2 通过javascript设置元素的样式 242 a.3 设置元素的class属性 243 a.4 创建输入元素 243 a.5 向输入元素增加事件处理程序 244 a.6 创建单选钮 245 a.7 小结 246 附录b ajax框架介绍 247 b.1 浏览器端框架 247 b.1.1 dojo 248 b.1.2 rico 248 b.1.3 qooxdoo 248 b.1.4 tibet 249 b.1.5 flash/javascript集成包 249 b.1.6 google ajaxslt 249 b.1.7 libxmlrequest 249 b.1.8 rslite 250 b.1.9 sack 250 b.1.10 sarrisa 250 b.1.11 xhconn 251 b.2 服务器端框架 251 b.2.1 cpaint 251 b.2.2 sajax 251 b.2.3 json/json-rpc 251 b.2.4 direct web remoting 252 b.2.5 swato 252 b.2.6 java blueprints 252 b.2.7 ajax.net 252 b.2.8 microsoft的atlas项目 253 b.2.9 ruby on rails ... 253