《一》以支持多种浏览器的方式创建 XMLHttpRequest 对
2011-02-24 14:29
561 查看
/* Create a new XMLHttpRequest object to talk to the Web server */
var xmlHttp = false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e2) {
xmlHttp = false;
}
}
@end @*/
if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
xmlHttp = new XMLHttpRequest();
}
现在先不管那些注释掉的奇怪符号,如
建立一个变量
尝试在 Microsoft 浏览器中创建该对象:
尝试使用
如果失败,再尝试
如果仍然没有建立
最后,
var xmlHttp = false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e2) {
xmlHttp = false;
}
}
@end @*/
if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
xmlHttp = new XMLHttpRequest();
}
现在先不管那些注释掉的奇怪符号,如
@cc_on,这是特殊的 JavaScript 编译器命令,将在下一期针对
XMLHttpRequest的文章中详细讨论。这段代码的核心分为三步:
建立一个变量
xmlHttp来引用即将创建的
XMLHttpRequest对象。
尝试在 Microsoft 浏览器中创建该对象:
尝试使用
Msxml2.XMLHTTP对象创建它。
如果失败,再尝试
Microsoft.XMLHTTP对象。
如果仍然没有建立
xmlHttp,则以非 Microsoft 的方式创建该对象。
最后,
xmlHttp应该引用一个有效的
XMLHttpRequest对象,无论运行什么样的浏览器。
相关文章推荐
- 以支持多种浏览器的方式创建 XMLHttpRequest 对象
- 以支持多种浏览器的方式创建 XMLHttpRequest 对象
- 以支持多种浏览器的方式创建XMLHttpRequest对象
- 以支持多种浏览器的方式创建 XMLHttpRequest 对象
- 以支持多种浏览器的方式创建 XMLHttpRequest 对象
- 以支持多种浏览器的方式创建 XMLHttpRequest 对象
- 以支持多种浏览器的方式创建 XMLHttpRequest 对象
- 创建兼容于多浏览器支持的XMLHTTPRequest
- 创建具有错误处理能力及多种浏览器通用的 XMLHttpRequest对象
- 根据浏览器选择创建XMLHttpRequest对象
- 不同浏览器创建XMLHttpRequest
- XMLHttpRequest部分浏览器中不支持put/delete
- 根据浏览器选择创建XMLHttpRequest对象
- 兼容不同版本浏览器及版本号来创建XMLHttpRequest对象
- javascript跨浏览器创建XMLHttpRequest
- 解析ajax核心XMLHTTPRequest对象的创建与浏览器的兼容问题
- 创建跨浏览器访问的 XMLHttpRequest 对象
- 为不同浏览器创建XMLHttpRequest对象
- 封装支持FireFox与IE创建XMLHttpRequest方法
- 自己写jQuery-ajax插件,XMLHttpRequest,支持回调,兼容ie、ff、360等浏览器