Ajax的定义

原创 2006年06月05日 13:45:00
Ajax不是一个技术,它实际上是几种技术,每种技术都有其独特这处,合在一起就成了一个功能强大的新技术。Ajax包括:

  XHTML和CSS

  使用文档对象模型(Document  Object  Model)作动态显示和交互

  使用XML和XSLT做数据交互和操作

  使用XMLHttpRequest进行异步数据接收

  使用JavaScript将它们绑定在一起

  传统的web应用模型工作起来就象这样:大部分界面上的用户动作触发一个连接到Web服务器的HTTP请求。    
 
服务器完成一些处理---接收数据,处理计算,再访问其它的数据库系统,最后返回一个HTML页面到客户端。这是一个老套的模式,自采用超文本作为web使用以来,一直都这样用,  但看过《The  Elements  of  User  Experience》的读者一定知道,是什么限制了Web界面没有桌面软件那么好用。



图1:  传统Web应用模型(左)与Ajax模型的比较(右).  

  这种旧的途径让我们认识到了许多技术,但它不会产生很好的用户体验。当服务器正在处理自己的事情的时候,用户在做什么?没错,等待。每一个动作,用户都要等待。

  很明显,如果我们按桌面程序的思维设计Web应用,我们不愿意让用户总是等待。当界面加载后,为什么还要让用户每次再花一半的时间从服务取数据?实际上,为什么老是让用户看到程序去服务器取数据呢?  

  Ajax如何不同凡响

  通过在用户和服务器之间引入一个Ajax引擎,可以消除Web的开始-停止-开始-停止这样的交互过程.  它就像增加了一层机制到程序中,使它响应更灵敏,而它的确做到了这一点。

  不像加载一个页面一样,在会话的开始,浏览器加载了一个Ajax引擎---采用JavaScript编写并且通常在一个隐藏frame中。这个引擎负责绘制用户界面以及与服务器端通讯。Ajax引擎允许用异步的方式实现用户与程序的交互--不用等待服务器的通讯。所以用户再不不用打开一个空白窗口,看到等待光标不断的转,等待服务器完成后再响应。


图  2:  传统Web应用的同步交互过程(上)和Ajax应用的异步交互过程的比较(下).  

  通常要产生一个HTTP请求的用户动作现在通过JavaScript调用Ajax引擎来代替.  任何用户动作的响应不再要求直接传到服务器---例如简单的数据校验,内存中的数据编辑,甚至一些页面导航---引擎自己就可以处理它.  如果引擎需要从服务器取数据来响应用户动作---假设它提交需要处理的数据,载入另外的界面代码,或者接收新的数据---引擎让这些工作异步进行,通常使用XML,  不用再担误用户界面的交互。 

ajax定义和用法

定义和用法 ajax() 方法用于执行 AJAX(异步 HTTP)请求。 所有的 jQuery AJAX 方法都使用 ajax() 方法。该方法通常用于其他方法不能完成的请求。 ...
  • scholar_man
  • scholar_man
  • 2015年01月28日 17:46
  • 1081

JavaScript函数定义和ajax初步

一、JavaScript中定义函数的三种方式 1、正常方法:如同Java中定义方法一样。 function 函数名(参数1,参数2){ //函数体 } 要想使用,必须通过名称去调用。 2、...
  • xys_00
  • xys_00
  • 2016年02月19日 22:29
  • 181

AJAX中xhr对象详解

ajax中XMLHttpRequest参数详解 XJAX ,并不是一种新技术的诞生.它实际上代表的是几项技术按一定的方式组合在一在同共的协作中发挥各自的作用. 它包括: 使用XHTML和CS...
  • HUANGDALAN
  • HUANGDALAN
  • 2017年02月16日 14:08
  • 309

AJAX——JSON数据格式

JSON数据格式,前段时间一直听他们合作的说,但是不知道是什么,这次终于明白了,其实就是一种类似于XML的数据传输格式 。下边我从定义,语法,转换为JavaScript对象以及与XML的比较四个方面介...
  • liujiahan629629
  • liujiahan629629
  • 2013年12月15日 11:13
  • 16619

ajax--xhr属性方法&post实例

xhr的属性和方法列表 xhr.onreadystatechange = function(){ /*var pg = document.getElementById('zt'); ...
  • sonia_gintoki
  • sonia_gintoki
  • 2016年01月24日 11:21
  • 4901

30.ajax路由分离模块式开发步骤

ajax路由分离模块式开发步骤 1.首先创建一个apiAjax.js文件 2.在ApiAjax文件中,创建一个Ajax的函数对象,并且定义好它的公用的路径地址,用this.XXX表示 方便在其...
  • hh279768876
  • hh279768876
  • 2016年09月28日 16:49
  • 612

用ajax实现带标题,图片和自定义按钮的删除确认对话框

对话框 删除 ajax 标题 自定义按钮
  • hmh123123hmh
  • hmh123123hmh
  • 2015年06月23日 20:25
  • 542

Ajax之三种数据传输格式

通过ajax异步传输的数据格式有三种,分别是html、xml以及json格式。下面就分别给出它们传输格式的代码实例: html格式 ...
  • Coder__CS
  • Coder__CS
  • 2017年05月28日 22:01
  • 1252

使用AJAX时 设置ajax全局变量

ajaxsetup jQuery.ajaxSetup()函数用于设置AJAX的全局默认设置。 该函数用于更改jQuery中AJAX请求的默认设置选项。之后执行的所有AJAX请求...
  • qiuziqiqi
  • qiuziqiqi
  • 2017年03月22日 16:36
  • 528

jquery ajax全局方法的使用

JQuery 的AJAX方法使用非常的便利,并且提供了一些AJAX的全局方法供调用,合理使用这些方法将会产生非常大的帮助。 所谓全局方法,是指每当调用JQuery的AJAX方法,都会自动调用这些全局方...
  • zhang197093
  • zhang197093
  • 2016年02月18日 00:37
  • 6200
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Ajax的定义
举报原因:
原因补充:

(最多只允许输入30个字)