关键是要支持所有 浏览器。谁愿意编写一个只能用于 Internet Explorer 或者非 Microsoft 浏览器的应用程序呢?或者更糟,要编写一个应用程序两次?当然不!因此代码要同时支持 Internet Explorer 和非 Microsoft 浏览器。
现在先不管那些注释掉的奇怪符号,如 @cc_on
,这是特殊的 JavaScript 编译器命令,将在下一期针对 XMLHttpRequest
的文章中详细讨论。这段代码的核心分为三步:
- 建立一个变量
xmlHttp
来引用即将创建的XMLHttpRequest
对象。 - 尝试在 Microsoft 浏览器中创建该对象:
- 尝试使用
Msxml2.XMLHTTP
对象创建它。 - 如果失败,再尝试
Microsoft.XMLHTTP
对象。
- 尝试使用
- 如果仍然没有建立
xmlHttp
,则以非 Microsoft 的方式创建该对象。
最后,xmlHttp
应该引用一个有效的 XMLHttpRequest
对象,无论运行什么样的浏览器。