mysql xmlhttp_JS XMLHttpRequest对象的创建

XMLHttpRequest 对象是 Ajax 的基础,所有现代浏览器均支持 XMLHttpRequest 对象(IE 5、IE 6 使用 ActiveXObject)。XMLHttpRequest 用于在后台与服务器交换数据,这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

在 JavaScript 中,XMLHttpRequest 用于在后台与服务器交换数据。创建 XMLHttpRequest 对象的方法如下:

var xhr = new XMLHttpRequest ();

IE 5.0 版本开始以 ActiveX 组件形式支持 XMLHttpRequest,IE 7.0 版本开始标准化 XMLHttpRequest。不过所有浏览器实现的 XMLHttpRequest 对象都提供相同的接口和用法。

示例

下面示例使用工厂模式把定义 XMLHttpRequest 对象进行封装,这样只需要调用 creatXHR() 方法就可以返回一个 XMLHttpRequest 对象。

//创建XMLHttpRequest 对象

//参数:无

//返回值:XMLHttpRequest 对象

function createXHR () {

var XHR = [ //兼容不同浏览器和版本得创建函数数组

function () { return new XMLHttpRequest () },

function () { return new ActiveXObject ("Msxml2.XMLHTTP") },

function () { return new ActiveXObject ("Msxml3.XMLHTTP") },

function () { return new ActiveXObject ("Microsoft.XMLHTTP") }

];

var xhr = null;

//尝试调用函数,如果成功则返回XMLHttpRequest对象,否则继续尝试

for (var i = 0; i < XHR.length; i ++) {

try {

xhr = XHR[i]();

} catch(e) {

continue //如果发生异常,则继续下一个函数调用

}

break; //如果成功,则中止循环

}

return xhr; //返回对象实例

}

在上面代码中,首先定义一个数组,收集各种创建 XMLHttpRequest 对象的函数。第 1 个函数是标准用法,其他函数主要针对 IE 浏览器的不同版本尝试创建 ActiveX 对象。然后设置变量 xhr 为 null,表示为空对象。接着遍历工厂内所有函数并尝试执行它们,为了避免发生异常,把所有调用函数放在 try 中执行,如果发生错误,则在 catch 中捕获异常并执行 continue 命令,返回继续执行,避免抛出异常。如果创建成功,则中止循环,返回 XMLHttpRequest 对象。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值