所在的位置: Web开发 >> PHP >> PHPAJAX教程2AJAXXML

PHPAJAX教程2AJAXXML

XMLHTTPRequest对象使AJAX成为可能。

XMLHTTPRequest

XMLHTTPRequest对象是AJAX的关键。

该对象在InternetExplorer5.5与年7月发布之后就已经可用了,但是在人们开始讨论AJAX和Web2.0之前,这个对象并没有得到充分的认识。

创建XMLHTTPRequest对象

不同的浏览器使用不同的方法来创建XMLHTTPRequest对象。

InternetExplorer使用ActiveXObject。

其他浏览器使用名为XMLHTTPRequest的JavaScript内建对象。

要克服这个问题,可以使用这段简单的代码:

varXMLHTTP=null

if(window.XMLHTTPRequest)

{

XMLHttp=newXMLHTTPRequest()

}

elseif(window.ActiveXObject)

{

XMLHttp=newActiveXObject(Microsoft.XMLHTTP)

}

代码解释:

1.首先创建一个作为XMLHttpRequest对象使用的XMLHTTP变量。把它的值设置为null。

2.然后测试window.XMLHTTPRequest对象是否可用。在新版本的Firefox,Mozilla,Opera以及Safari浏览器中,该对象是可用的。

3.如果可用,则用它创建一个新对象:XMLHttp=newXMLHTTPRequest()

4.如果不可用,则检测window.ActiveXObject是否可用。在InternetExplorerversion5.5及更高的版本中,该对象是可用的。

5.如果可用,使用它来创建一个新对象:XMLHTTP=newActiveXObject()

改进的例子

一些程序员喜欢使用最新最快的版本的XMLHTTPRequest对象。

下面的例子试图加载微软最新版本的Msxml2.XMLHTTP,在InternetExplorer6中可用,如果无法加载,则后退到Microsoft.XMLHTTP,在InternetExplorer5.5及其后版本中可用。

functionGetXmlHTTPObject()

{

varxmlHTTP=null;

try

{

//Firefox,Opera8.0+,Safari

xmlHttp=newXMLHTTPRequest();

}

catch(e)

{

//InternetExplorer

try

{

xmlHttp=newActiveXObject(Msxml2.XMLHTTP);

}

catch(e)

{

xmlHttp=newActiveXObject(Microsoft.XMLHTTP);

}

}

returnxmlHTTP;

}

代码解释:

1.首先创建用作XMLHttpRequest对象的XMLHTTP变量。把它的值设置为null。

2.按照web标准创建对象(Mozilla,Opera以及Safari):XMLHttp=newXMLHTTPRequest()

3.按照微软的方式创建对象,在InternetExplorer6及更高的版本可用:XMLHttp=newActiveXObject(Msxml2.XMLHTTP)

4.如果捕获错误,则尝试更老的方法(InternetExplorer5.5):XMLHttp=newActiveXObject(Microsoft.XMLHTTP)

长按







































小孩得白癜风怎么治疗
白癜风系统检查项目图



转载请注明:http://www.guyukameng.com/php/php/4254.html