网页局部刷新技术——AJAX

来源:cx 发布时间:2013-07-24 17:32:00 点击数:
  AJAX技术可以只刷新页面的局部,就可以发送并取回数据。整个过程为,浏览器向web服务器发送HTTP请求,当web服务器返回数据时,用JavaScript修改网页的某一部分,使得网页的响应变得更加迅速。而传统的使用HTML表单把数据提交给web服务器,而当web服务器返回数据之后,会向用户返回一整张的新网页(整个页面都刷新了)。而用户每提交一次输入,整个页面就要刷新一次,这使得传统的web应用程序运行越来越缓慢,用户的体验非常的不好。
  AJAX 是一种在浏览器运行的技术,而不是一种编程语言。它用浏览器与web服务器之间的异步数据传输,网页只需要向服务器请求需要的数据,而不是返回一整张网页。AJAX中使用的开放标准被良好地定义,并得到所有主要浏览器的支持,是一种跨平台跨浏览器的技术。
  web应用程序和桌面应用程序相比的优势有:更容易开发、更容易安装和维护、拥有更多的用户。传统的HTML表单提交数据使得web应用程序响应变得相当缓慢。AJAX可以使得web应用程序变的更轻巧、更快速,且更易使用。
  XMLHttpRequest 对象为AJAX技术的关键,不同的浏览器使用不同的方法来创建 XMLHttpRequest 对象,Internet Explorer 使用 ActiveXObject,其他浏览器使用名为 XMLHttpRequest 的 JavaScript 内建对象。要克服这个问题,可以使用这段简单的代码:
var XMLHttp=null
if (window.XMLHttpRequest)
  {
  XMLHttp=new XMLHttpRequest()
  }
else if (window.ActiveXObject)
  {
  XMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
  }
  代码解释:
  一、首先创建一个作为 XMLHttpRequest 对象使用的 XMLHttp 变量。把它的值设置为 null。
  二、然后测试 window.XMLHttpRequest 对象是否可用。在新版本的 Firefox, Mozilla, Opera 以及 Safari 浏览器中,该对象是可用的。
  三、如果可用,则用它创建一个新对象:XMLHttp=new XMLHttpRequest()。
  四、如果不可用,则检测 window.ActiveXObject 是否可用。在 Internet Explorer version 5.5 及更高的版本中,该对象是可用的。
  五、如果可用,使用它来创建一个新对象:XMLHttp=new ActiveXObject()。
  AJAX实现起来非常容易,像js框架Jquery等对其进行了封装,有了这些框架,实现AJAX就变的更加的简单了。