【发布时间】:2008-11-21 01:09:21
【问题描述】:
我正在尝试更新用于检测 AJAX 支持的旧 JavaScript 函数(即 XmlHttpRequest 对象)。我在网上查看(包括 SO)并找到了各种解决方案,但我不确定哪种解决方案对于简单地检测支持最有效。
当前函数是:
function IsSyncAJAXSupported()
{
var isSyncAJAXSupported = true;
var xmlHttp = null;
var clsids = ["Msxml2.XMLHTTP.4.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"];
for(var i=0; i<clsids.length && xmlHttp == null; i++) {
try {
xmlHttp = new ActiveXObject(clsids[i]);
} catch(e){}
}
if(xmlHttp == null && MS.Browser.isIE)
{
isSyncAJAXSupported = false;
}
return isSyncAJAXSupported;
}
在 Firefox 3 中,由于 MS 未定义,上述错误。
我意识到使用库会更好,但这不是短期的选择。我们仅支持 IE6 及以上版本 + 最新版本的 Firefox、Safari/WebKit 和 Opera。
为 XmlHttpRequest 支持获取真/假的最佳方法是什么?
【问题讨论】:
标签: ajax xmlhttprequest