释放 Web 页面的信息您可能已经注意到了,Internet 还有另一个重要特征:似乎可以访问无限量的信息,而无需在本地机器上进行复制。有了 Ajax,您可以构建一个与某个巨大数据库(无论它位于全球的哪个服务器)连接的互动界面,实现前所未有的功能。
Google Maps 就是这种 Ajax 应用程序之一,它集中体现了开发人员和用户的想象力。在这个 Web 站点上,您可以浏览整个地球的地图和卫星照片,而无需刷新页面。以这种方式释放数据可能是 Ajax 最具价值的潜在用途。
在 Google Maps 出现之前,地图网站已经出现了很多年,但是 Google Maps 是与众不同的,因为 Ajax 所允许的界面是前所未有的。在传统的地图网站上,将视图向西移动需要单击一个链接。然后出现一个新页面,它包含生成的调整后的地图。所以必须等待页面清除,再次加载,然后滚动到该地图。
这种糟糕的界面是由 Web 的根本局限性导致的。获取 Web 服务器数据的惟一方式是访问一个新的 URL,然后下载包含新内容的新 Web 页面。如果希望查看当前视图任何微小更改(比如向西移动一点),必须加载整个新地图。由于 Ajax 允许在后台异步获取数据,因此无需清除和加载整个页面。只需要加载地图的数据和图片碎片。也可以为特定的地图视图生成 URL,但这不再是加载更多信息的惟一途径。
您可以使用 Web 页面作为许多其他场景数据的界面。考虑一个分页场景,比如查看分为很多页的搜索结果时。用户界面控件(比如上一页和下一页)不需要每次都加载整个新 Web 页面。使用 Ajax,您可以异步加载下一页的结果,并相应地更新页面。甚至可以预加载下一页,以便在用户希望查看时立即显示。
通过文档与信息的分离,还可以加快速度并节省带宽。大多数情况下,可扩展标记语言(XML)或者 JavaScript Serialized Object Notion (JSON) 形式的原始数据比 Web 页面的 HTML 表示形式要小,特别是页面的剩余部分(比如标题、导航、脚注尤其明显)。
将信息留在 Web 页面上Ajax 打开了从 Web 服务器获取原始数据的方便之门,但这并不意味着您不再需要老式的 Web 页面。用户能够通过 URL 访问数据片断很重要,因为这样才能与他人分享。
Ajax 还能让搜索引擎抓取您的站点。针对搜索引擎对站点内容进行优化不仅仅是为了将用户吸引到站点中,它同时也是一个可用性问题。您也许通过搜索引擎找到了大多数要用的站点,也可能只使用大多数站点的一两个页面。如果站点提供的内容被隐藏在 Ajax 技术背后,那么搜索引擎将无法搜索到,从而世界上大多数人都无法找到您的站点。因此让站点的信息可以通过传统的 HTML 页面浏览非常重要,即使还可以通过 JSON 或 XML 浏览。
Ajax 可以拯救站点Web 用户界面通常能够让用户在 Web 服务器上保存数据,或者轻松创建、更新、删除条目。 当然,这些任务总是能够通过 HTML 形式实现,但是 Ajax 能更加便捷地在后台异步发送数据。试想使用 Ajax 和 JavaScript 代码简化添加、编辑和删除内容,它们使条目列表的管理变得更加简单。还可以增强单个条目的添加,比如在消息板上编写,只需要使用 Ajax 向服务器发送消息,然后使用 DOM 脚本将消息立即添加到页面。
Ajax 可以毁灭站点大多数用户不希望 Web 站点使用 Ajax;很多用户甚至从未听说过 Ajax。因此,在使用 Ajax 设计页面时,一定要确保程序与目标用户能够交流。例如,如果使用 Ajax 向服务器提交一个表单或发送数据,则在发生以下动作时,应用程序必须与用户进行交流: