AJAX简介(转)

AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术。它使用:使用XHTML+CSS来表示信息; 使用Javascript操作Document Object Model进行动态显示及交互; 使用 XML 和 XSLT 进行数据交换及相关操作; 使用 XMLHttpRequest对象与Web服务器进行异步数据交换; 使用 JavaScript 将所有的东西绑定在一起。

参见Ajax的提出者Jesse James Garrett的英文原文中文译文

类似于DHTML或LAMP,AJAX不是指一种单一的技术,而是有机地利用了一系列相关的技术。事实上,一些基于AJAX的“派生/合成”式(derivative/composite)的技术正在出现,如“AFLAX”。

AJAX的应用使用支持以上技术的web浏览器作为运行平台。这些浏览器目前包括:Mozilla、Firefox、Internet Explorer、Opera、Konqueror及Safari。但是Opera不支持XSL格式对象,也不支持XSLT。

与传统的web应用比较

传统的web应用允许用户填写表单(form),当提交表单时就向web服务器发送一个请求。服务器接收并处理传来的表单,然后返回一个新的网页。这个做法浪费了许多带宽,因为在前后两个页面中的大部分HTML代码往往是相同的。由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的响应时间。这导致了用户界面的响应比本地应用慢得多。

与此不同,AJAX应用可以仅向服务器发送并取回必需的数据,它使用SOAP或其它一些基于XML的web service接口,并在客户端采用JavaScript处理来自服务器的响应。因为在服务器和浏览器之间交换的数据大量减少,结果我们就能看到响应更快的应用。同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。

优点、前提和批评

使用Ajax的最大优点就是能在不刷新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地响应用户交互,并避免了在网络上发送那些没有改变的信息。

Ajax不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。就像DHTML应用程序那样,Ajax应用程序必须在众多不同的浏览器和平台上经过严格的测试。随着Ajax的成熟,一些简化Ajax使用方法的程序库也相继问世。同样,也出现了另一种辅助程序设计的技术,为那些不支持JavaScript的用户提供替代功能。

对应用Ajax最主要的批评就是,它可能破坏浏览器后退按钮的正常行为(参见Jakob Nielsen‘s的《1999 Top-10 New Mistakes of Web Design》)。在动态更新页面的情况下,用户无法回到前一个页面状态,因为浏览器仅能记忆历史记录中的静态页面。一个被完整读入的页面与一个已经被动态修改过的页面之间的差别非常微妙;用户通常会希望单击后退按钮能够取消他们的前一次操作,但是在Ajax应用程序中,这将无法实现。开发者们想出了种种办法来解决这个问题,大多数都是在用户单击后退按钮访问历史记录时,通过创建或使用一个隐藏的IFRAME来重现页面上的变更。(例如,当用户在Google Maps中单击后退时,它在一个隐藏的IFRAME中进行搜索,然后将搜索结果反映到Ajax元素上,以便将应用程序状态恢复到当时的状态。)

一个相关的观点认为,使用动态页面更新使得用户难于将某个特定的状态保存到收藏夹中。该问题的解决方案也已出现,大部分都使用URL片断标识符(通常被称为锚点,即URL中#后面的部分)来保持跟踪,允许用户回到指定的某个应用程序状态。(许多浏览器允许JavaScript动态更新锚点,这使得Ajax应用程序能够在更新显示内容的同时更新锚点。)这些解决方案也同时解决了许多关于不支持后退按钮的争论。

Ajax开发时,网络延迟——即用户发出请求到服务器发出响应之间的间隔——需要慎重考虑。不给予用户明确的回应[3],没有恰当的预读数据[4],或者对XMLHttpRequest的不恰当处理[5],都会使用户感到延迟,这是用户不希望看到的,也是他们无法理解的。[6]通常的解决方案是,使用一个可视化的组件来告诉用户系统正在进行后台操作并且正在读取数据和内容。

(转自 http://www.okajax.com/a/200811/111D1M2008.html)

时间: 2024-10-27 16:37:21

AJAX简介(转)的相关文章

JavaScript教程之jQuery - AJAX 简介

jQuery - AJAX 简介 AJAX 是与服务器交换数据的技术,它在不重载全部页面的情况下,实现了对部分网页的更新. jQuery AJAX 实例 使用 jQuery AJAX 修改文本内容 获取外部内容 尝试一下 ? 什么是 AJAX? AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML). 简短地说,在不重载整个网页的情况下,AJAX 通过后台加载数据,并在网页上进行显示. 使用 AJAX 的应用程序案例:谷歌地图.腾讯

ajax简介以及用ajax做的三级联动小练习

ajax基本结构: 1 var name = $("#text_1").val(); 2 $.ajax({ 3 url: "Ashxs/Handler.ashx",//一般处理程序路径 4 data: { "name": name },//要传输的数据,冒号前面是键名后面是要传输的数据,如果有多条数据在大括号内用逗号拼接 5 type: "post",//传输方式 6 dataType: "json",//

AJAX简介

基本介绍 AJAX 指异步 JavaScript 及 XML(Asynchronous JavaScript And XML). 国内翻译常为“阿贾克斯”和阿贾克斯足球队同音.Web应用的交互如Flickr,Backpack和Google在这方面已经有质的飞跃.这个术语源自描述从基于Web的应用到基于数据的应用的转换.在基于数据的应用中,用户需求的数据如联系人列表,可以从独立于实际网页的服务端取得并且可以被动态地写入网页中,给缓慢的Web应用体验着色使之像桌面应用一样. Ajax的核心是Java

JQuery Ajax简介

一.什么是AJAX AJAX = 异步 JavaScript 和 XML (Asynchronous JavaScript and XML) 简短点说,就是在不加载整个网页的情况下,AJAX通过后台加载数据,并在网页上进行显示. AJAX是一种创建交互式网页应用的网页开发技术. 二.JQuery AJAX JQuery提供多个与AJAX有关的方法,通过HTTP Get  和 HTTP Post 从远程服务器上请求文本, HTML XML 或 JSON 同时你能够把这些外部数据直接载入网页的被选元

Ajax 简介 及 简单使用

AJAX = Asychroous JavaScript  and XML(异步的Javascript and xml) ajax并不是新的编程语言,而是一种使用现有标准的新方法. ajax是与服务器交换数据并更新部分网页的艺术,在不重载整个页面的情况下 有很多使用 AJAX 的应用程序案例:新浪微博.Google 地图.开心网等等. XMLHttpRequest是Ajax的基础: 所有现代浏览器均支持 XMLHttpRequest 对象(IE5 和 IE6 使用 ActiveXObject).

ajax简介+原生ajax代码

Ajax (Asynchronous Javascript And XML),翻译过来就是异步Javascript和XML:是一种在网页上与服务器进行交互的技术.它异步交互的特性,能够在不刷新页面的情况下,对服务器发出请求并获取数据,再利用js处理数据,显示在原网页上:实现局部刷新的效果. Ajax是通过XMLHTTPRequest这个核心对象,来完成与web服务器的交互 原生js实现Ajax:http://www.cnblogs.com/colima/p/5339227.html

AJAX开发技术--AJAX简介

Asynchronous  JavaScript and XML,异步JavaScript和XML 主要目的用于页面的局部刷新.不用全部刷新,提高性能. 在AJAX中主要是通过XMLHttpRequest对象处理发送异步请求和处理回应的,此对象最早是在IE 5中以ActiveX组件的形式出现的,一直到2005年之后才被广泛的使用,而如果要想创建一个XMLHttpRequest对象必须使用JavaScript. 创建XMLHttpRequest对象 —— create_ajax.htm : <sc

jQuery - AJAX 简介

AJAX是与服务器交换数据的艺术,它在不重载全部页面的情况下,实现了对部分网页的刷新. jQuery - AJAX 实例,通过jQuery AJAX改变这段文本. 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="

ajax 简介0

WEB项目总是发生些新的变化,过去每个人都会抱怨WEB项目功能不如CS程序丰富,相应速度不够快速.但现在由于Ajax的出现有了很大的改观,具有快速的高响应性的用户界面.在传统的Web 应用程序中,当用户单击链接时,要等待服务器作出响应并且刷新页面,而且这个过程会重复进行.但是,这些新站点具有更好的响应性,能够立即更新页面,这提供了出色的交互和更好的用户体验.这些新站点的强大功能来自于称为Ajax 的新技术(其实这种技术并不是全新的).可以使用Ajax技术让自己的站点具有更好的响应性.更吸引人,这