创建兼容浏览器的异步对象
ie6后使用了ActiveObject统一使用了Msxml2.XMLHttp,之前的版本使用的是Microsoft.XMLHttp
ie7之后和firefox都是支持XMLHttpRequest对象的。
可以这么写
var xmlHttp = false;
function createXMLHttpRequest(){
try{
xmlHttp = new ActiveXObject("Msxml2.XMLHttp");
}
catch(e){
try{
xmlHttp = new ActiveXObject("Microsoft.XMLHttp");
}
catch(e){
xmlHttp = false;
}
}
if (!xmlHttp && typeof XMLHttpRequest!= 'undefined'){
xmlHttp = new XMLHttpRequest();
}
}
在Ajax基础教程中提供了一种建立方式。
var xmlHttp;
function createXMLHttpRequest(){
if (window.ActiveXObject){
xmlHttp = new ActiveXObject("Microsoft.XMLHttp");
}
else if (window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest();
}
}
使用版本二的ActionXObject会效率更高。修改为:
if (window.ActiveXObject){
(xmlHttp = new ActiveXObject("Msxml2.XMLHttp"))||(xmlHttp = new ActiveXObject("Microsoft.XMLHttp"));
}
else if (window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest();
}
分享到:
相关推荐
下面将详细介绍这两种方法,并给出示例代码。 #### IAsyncResult 接口 `IAsyncResult`是一个公共接口,用于表示异步操作的结果。该接口定义了以下四个成员: 1. **AsyncState**:一个对象,用于保存异步操作的...
以下是两种主要的动态创建组件的方法: 1. 使用`Loader`组件: `Loader`组件是QML中最直接用于动态加载和管理其他QML组件的工具。通过指定`source`属性,你可以决定要加载哪个QML文件。当`Loader`加载完成后,它的...
如果两种方式都失败,则将`xmlHttp`设置为`false`,表示创建失败。 #### 四、非IE浏览器下的处理 对于非IE浏览器,可以简单地通过`new XMLHttpRequest()`来创建对象。需要注意的是,这种方法在IE浏览器中会抛出...
在 MySocketClientEx 类中,我们需要实现 start 方法,创建异步 socket 对象,并传递接口类到异步 socket 对象中。这样,我们可以在异步 socket 对象中回调我们的方法。 异步 Socket 服务器实现: 在异步 socket ...
在.NET框架中,提供了异步通信的支持机制,可以通过以下两种方式进行实现: ##### 方法一:使用`Begin`和`End`方法实现异步调用 这种方法是.NET SDK中推荐的方式之一。具体步骤如下: 1. **创建WebService代理...
另一种方式可能是使用`async/await`,这样可以更简洁地编写异步代码,提高代码可读性。 3. **AppOne与AppTwo**:这两个应用分别代表了命名管道通信的两端。AppOne作为服务器端,初始化管道并监听连接,当客户端连接...
C#作为微软开发的面向对象的编程语言,提供了丰富的API和特性来支持这两种操作模式。本篇文章将深入探讨C#中的同步与异步读写,并结合“第一次实验(同步与异步读写)”的实践案例进行解析。 首先,我们要理解同步...
这两种方法加载的方式完全一样,都是异步加载新游戏场景。 同步加载与异步加载 同步加载是一种阻塞式的加载方式,例如使用 Application.LoadLevel 方法加载游戏场景。这种方式会阻塞游戏进程,直到加载完成。 ...
在WCF中,服务端异步操作通常通过两种方式实现: - **Begin/End方法对**:这是.NET Framework早期推荐的方式,通过定义两个方法,一个用于启动异步操作(BeginXXX),另一个用于获取结果并结束操作(EndXXX)。 -...
在.NET框架中,特别是ASP.NET中,异步Web方法是处理长时间运行操作的一种高效方式。这种技术允许Web服务执行耗时的任务而不阻塞主线程,从而提高系统的响应性和吞吐量。 异步Web方法通过以下三个主要步骤来实现: ...
在.NET中,异步编程主要基于两种模式:基于回调的异步编程(如BeginInvoke/EndInvoke)和任务并行库(TPL)中的async/await。对于WinForm应用,通常推荐使用async/await模式,因为它提供了更好的可读性和维护性。 1...
在编程领域,异步操作是一种优化程序性能的重要技术,特别是在处理I/O密集型任务时,如查询数据库记录。异步编程允许程序在等待某个操作完成(例如,从数据库读取数据)的同时,继续执行其他任务,提高了程序的响应...
异步数据库访问主要通过两种方式实现:异步方法(如`.BeginExecuteReader()`)和`async/await`关键字。在这个示例中,我们看到了使用异步方法的方式。在`button2_Click`事件处理程序中,创建了一个`SqlConnection`...
文档中提到了Ajax对象中包含的两种主要的HTTP请求方式:GET和POST。 GET请求的主要特点包括:简单、快速和有限的数据传输能力。它通常用于从服务器获取数据,请求的数据会被附加在URL的后面,形成一个查询字符串。...
在这个示例中,我们创建了两个Promise对象,分别用于模拟登录请求和获取用户信息的异步操作。然后,我们使用co函数包裹了一个生成器函数,在生成器函数内部,我们通过yield关键字等待了这两个异步操作的结果。这样,...
本文将深入探讨如何在C#编程环境中实现TCP/IP的同步和异步通信,并结合提供的“WindowsInternetServer”压缩包文件,讲解如何封装这两种通信方式。 首先,TCP/IP同步通信是指在发送数据前,必须等待接收方确认接收...
首先,我们来看同步和异步这两种通信方式的区别: 1. **同步通信**:在同步模式下,浏览器会阻塞其他所有脚本执行,直到当前的AJAX请求完成。这意味着用户无法进行任何其他操作,直到请求返回结果。这种方式虽然...
在IT行业中,jQuery和JSON是两个非常重要的技术概念,它们在网页开发,特别是前端交互方面起着关键作用。本文将详细解析如何利用jQuery和JSON来创建一个投票系统,并且会探讨异步投票代码的工作原理。 首先,jQuery...
Web服务的异步实现主要涉及两种方式:同步调用和异步调用。异步调用在服务器端能够提高资源利用率,避免因为单个请求阻塞其他请求的处理。在客户端,使用异步调用可以保持用户界面的响应性。 【Remoting】是.NET ...
文件下载也支持同步和异步两种方式。同步方式下,可以使用`FtpWebRequest`对象调用`DownloadFile`或`DownloadData`方法直接下载文件。异步方式则通过`BeginDownloadFile`或`BeginDownloadData`方法启动下载过程,并...