Getting Started
An introduction to AJAX.
An introduction to AJAX.
异步 JavaScript + XML, 本身不是一种技术, 是在2005年由 Jesse James Garrett 提出的一个术语, 描述了一种“新”的结合使用大量已经存在的技术的方式, 包括: HTML 或 XHTML, CSS, JavaScript, DOM, XML, XSLT, 还有最重要的 XMLHttpRequest 对象.
当这些技术以Ajax模型的方式集合起来,web应用可以更快地,无需加载整个页面就能更新用户界面。这使应用能更快地响应用户行为.
尽管在 AJAX 中 X 代表 XML, 但现在 JSON 使用的更多,因为 JSON 具有很多优势,比如更轻量并且是JavaScript的一部分. 在 AJAX 模型中 JSON 和 XML 都用于承载信息.
文档
- 入门
- 这篇文章通过介绍 AJAX 基础知识和两个实际例子引导你快速入门.
- 使用 XMLHttpRequest API
- 这个
XMLHttpRequest
API 是 AJAX 的核心. 这篇文章向你解释怎样使用一些 AJAX 技术, 比如:- 分析和操作服务器端的响应,
- 监视请求的进度,
- 使用纯 AJAX 或
FormData
对象提交表单和上传二进制文件. - 创建异步或同步请求,
- 在 Web workers 中使用 AJAX.
- 服务器端发送事件
- 传统上,一个 web 页面必须发送一个请求到服务器端然后接收到新的数据; 换言之, 页面从服务器请求数据. 而服务器端发送事件, 通过推送消息到web页面,服务器可能在任何时刻发送新数据到web页面. 这些接收到的消息可以被当作 web 页面里的 事件(Events) + 数据. 参见: 使用服务器端发送事件.
- 纯-AJAX 导航示例
- 这篇文章提供了一个工作着的仅由三个 pure-AJAX web 站点组成的示例.
- 发送和接收二进制数据
- XMLHttpRequest 对象的
responseType
属性可以被设置用来改变期望从服务器端获得的响应类型. 可能的值有:空串(默认),"arraybuffer"
,"blob"
,"document"
,"json"
, 和"text"
.response
属性根据responseType
将包含的实体作为ArrayBuffer
,Blob
,Document
,JSON
, 或 string. 这篇文章将展示一些 AJAX I/O 技术. - XML
- 可扩展标记语言 (XML) 是 W3C 推荐的用于创建特定目的标记语言的通用标记语言. 它是 SGML 的一个简化子集, 能描述很多不同类型的数据. 它的主要目的是促进跨系统间的数据共享, 尤其是通过互联网连接起来的系统.
- JXON
- JXON 表示无损 Javascript XML Object Notation, 它是使用 XML 表示 JavaScript 对象树(JSON)的一个通用名字.
- 解析和序列化 XML
- 怎样从一个字符串、文件或通过 JavaScript 解析出 XML 文档,怎样序列化 XML 文档为字符串,JavaScript对象树(JXON)或文件.
- XPath
- XPath 表示 XML Path 语言, 它使用非 XML 语法提供一种的灵活方式访问一个 XML 文档的不同部分. 与此同时, 能用于测试文档内给定的结点,判断它们是否匹配一个模式.
- The
FileReader
API - 使用
File
或Blob
对象指定要读取的文件或数据,FileReader
API 让 web 应用异步读取存储在用户计算机上的文件内容. 文件对象可能从一个作为用户使用<input>
元素选择文件返回结果的FileList
对象获得, 或来自一个拖拽操作的DataTransfer
对象, 或来自在一个HTMLCanvasElement
上mozGetAsFile()
API 操作. - 在 XMLHttpRequest 中使用 HTML
- W3C XMLHttpRequest 规范给
XMLHttpRequest
添加了 HTML 解析支持, 原先只支持XML解析的. 这个特性允许 Web app 使用XMLHttpRequest
获取一个解析为 DOM 的HTML资源. - 其他资源
- 其他一些有用的 AJAX 资源.
See also
- 其他 AJAX 技术
- 大多数关于 Ajax 的文章集中在使用 XMLHttp 作为实现这种通信的方式, 但是 Ajax 技术不仅仅限制在XMLHttp. 这里介绍了几个其他方法.
- Ajax: A New Approach to Web Applications
- adaptive path 的 Jesse James Garrett, 在2005年写了这篇文章, 引入了 AJAX 和相关概念.
- A Simpler Ajax Path
- "事实证明, 在仍然使用像收集用户输入的 web 表单这样的传统工具情况下,相当容易利用 XMLHttpRequest 对象使 web 应用更像桌面应用."
- 在 AJAX 应用中修复返回按钮和启用书签
- Mike Stenhouse 写了这篇文章, 列举了一些在开发 AJAX 应用时用来修复返回按钮和书签问题的方法.
- Ajax 常见错误
- Alex Bosworth 写了这篇文章总结了AJAX应用开发者容易犯的一些错误.
- 教程 和示例.
- XMLHttpRequest 规范
- W3C 工作草案
社区
- View Mozilla forums...
工具
- Toolkits and frameworks
- Firebug - Ajax/Web development tool
- AJAX Debugging Tool
- Flash/AJAX Integration Kit
- A Simple XMLHTTP Interface Library
示例
- AJAX poller script
- Ajax Chat Tutorial
- RSS Ticker with AJAX
- AJAX Login System using XMLHttpRequest
- Create your own Ajax effects
- AJAX: Creating Huge Bookmarklets
- AJAX: Hot!Ajax There are many cool examples
相关主题
HTML, XHTML, CSS, DOM, JavaScript, XML, XMLHttpRequest, XSLT, DHTML, Same Origin Policy