以支持多种浏览器的方式创建 XMLHttpRequest 对象
Ajax代码同时支持Internet Explorer 和非 Microsoft游览器/* 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();}
现在先不管那些注释掉的奇怪符号,如 @cc_on,这是特殊的 JavaScript 编译器命令,将在下一期针对 XMLHttpRequest 的文章中详细讨论。这段代码的核心分为三步:
1.建立一个变量 xmlHttp 来引用即将创建的 XMLHttpRequest 对象。
2.尝试在 Microsoft 浏览器中创建该对象:
◦尝试使用 Msxml2.XMLHTTP 对象创建它。
◦如果失败,再尝试 Microsoft.XMLHTTP 对象。
3.如果仍然没有建立 xmlHttp,则以非 Microsoft 的方式创建该对象。
创建XMLHttpRequest对象实例
var xmlHttp = false;function createXmlHttpRequest(){ if(window.ActiveXObject) { try { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch(ee) { xmlHttp = false; } } } else if(window.XMLHttpRequest) { try { xmlHttp = new XMLHttpRequest(); } catch(e) { xmlHttp = false; } }}
页:
[1]