Ajax分析

Ajax(Asynchronous JavaScript + XML)的定义

基于web标准(standards-based presentation)XHTML+CSS的表示;

  使用 DOM(Document Object Model)进行动态显示及交互;
  使用 XML 和 XSLT 进行数据交换及相关操作;
  使用 XMLHttpRequest 进行异步数据查询、检索;
  使用 JavaScript 将所有的东西绑定在一起。英文参见Ajax的提出者Jesse James Garrett的原文,原文题目(Ajax: A New Approach to Web Applications)。
  类似于DHTML或LAMP,AJAX不是指一种单一的技术,而是有机地利用了一系列相关的技术。事实上,一些基于AJAX的“派生/合成”式(derivative/composite)的技术正在出现,如“AFLAX”。
  AJAX的应用使用支持以上技术的web浏览器作为运行平台。这些浏览器目前包括:Mozilla, Firefox, Internet Explorer, Opera, Kongqueror等。 但是Opera不支持XSL格式对象,也不支持XSLT。

 

创建XMLHttpRequest 方法如下

  XMLHttpRequest 类首先由Internet Explorer以ActiveX对象引入,被称为XMLHTTP。 后来Mozilla﹑Netscape﹑Safari 和其他浏览器也提供了XMLHttpRequest类,不过它们创建XMLHttpRequest类的方法不同。

 

在实际应用中,为了兼容多种不同版本的浏览器,一般将创建XMLHttpRequest类的方法写成如下形式:

  try{
  if( window.ActiveXObject ){
  for( var i = 5; i; i-- ){
  try{
  if( i == 2 ){
  xmlhttp_request = new ActiveXObject( "Microsoft.XMLHTTP" ); }
  else{
  xmlhttp_request = new ActiveXObject( "Msxml2.XMLHTTP." + i + ".0" );
  xmlhttp_request.setRequestHeader("Content-Type","text/xml");
  xmlhttp_request.setRequestHeader("Charset","gb2312"); }
  break;}
  catch(e){
  xmlhttp_request = false; } } }
  else if( window.XMLHttpRequest )
  { xmlhttp_request = new XMLHttpRequest();
  if (xmlhttp_request.overrideMimeType)
  { xmlhttp_request.overrideMimeType('text/xml'); } } }
  catch(e){ xmlhttp_request = false; }

 

你可能感兴趣的:(JavaScript,Ajax,浏览器,XMLhttpREquest,asynchronous,mozilla)