当前位置: 首页 > 图文教程 > 专题中心 > AJAX、AJAX教程,AJAX入门和AJAX实例专题 > AJAX基础入门教程 > AJAX教程(4):AJAX 浏览器支持

AJAX基础入门教程
AJAX教程(17):把XML文件显示为HTML表格
AJAX教程(16):通过XMLHTTP进行一次指定的HEAD请求
AJAX教程(15):通过XMLHTTP进行一次HEAD请求
AJAX教程(14):通过XMLHTTP加载XML文件
AJAX教程(13):通过XMLHTTP把文本文件载入HTML元素
AJAX教程(12):AJAX ResponseXML 实例
AJAX教程(11):AJAX XML 实例
AJAX教程(10):AJAX 数据库实例
AJAX教程(9):AJAX 请求 源代码
AJAX教程(8):AJAX 请求实例
AJAX教程(7):AJAX - 服务器端的脚本
AJAX教程(6):AJAX - 请求服务器
AJAX教程(5):AJAX-XMLHttpRequest 对象
AJAX教程(4):AJAX 浏览器支持
AJAX教程(3):AJAX实例
AJAX教程(2):AJAX Http请求
AJAX教程(1):AJAX简介

AJAX基础入门教程 中的 AJAX教程(4):AJAX 浏览器支持


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-12-05   浏览: 83 ::
收藏到网摘: n/a

AJAX - 浏览器支持

AJAX 的要点是 XMLHttpRequest 对象。

不同的浏览器创建 XMLHttpRequest 对象的方法是有差异的。

IE 浏览器使用 ActiveXObject,而其他的浏览器使用名为 XMLHttpRequest 的 JavaScript 内建对象。

如需针对不同的浏览器来创建此对象,我们要使用一条 "try and catch" 语句。您可以在我们的 JavaScript 教程中阅读更多有关 try 和 catch 语句 的内容。

让我们用这段创建 XMLHttpRequest 对象的 JavaScript 来更新一下我们的 "testAjax.htm" 文件:

<html>
<body>
<script type="text/javascript">
function ajaxFunction() { var xmlHttp; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e) { // Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { alert("您的浏览器不支持AJAX!"); return false; } } } }
</script>
<form name="myForm">
用户: <input type="text" name="username" />
时间: <input type="text" name="time" />
</form></body>
</html>

例子解释:

首先声明一个保存 XMLHttpRequest 对象的 xmlHttp 变量。

然后使用 XMLHttp=new XMLHttpRequest() 来创建此对象。这条语句针对 Firefox、Opera 以及 Safari 浏览器。假如失败,则尝试针对 Internet Explorer 6.0+ 的 xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"),假如也不成功,则尝试针对 Internet Explorer 5.5+ 的 xmlHttp=new ActiveXObject("Microsoft.XMLHTTP")。

假如这三种方法都不起作用,那么这个用户所使用的浏览器已经太过时了,他或她会看到一个声明此浏览器不支持 AJAX 的提示。

注释:上面这些浏览器定制的代码很长,也很复杂。不过,每当您希望创建 XMLHttpRequest 对象时,这些代码就能派上用场,因此您可以在任何需要使用的时间拷贝粘贴这些代码。上面这些代码兼容所有的主流浏览器:Internet Explorer、Opera、Firefox 以及 Safari。

下一节为您展示如何使用 XMLHttpRequest 对象与服务器进行通信。