我目前正在使用backbone.js作为框架的javascript项目。这是一个相当旧的项目,其中使用了Activex组件,现在我需要完全替换这个控件,这样即使我禁用了我的active x,我的功能也应该像预期的那样工作。我如何才能做到这一点?这是我下面的代码块,可以参考。谢谢
function getXMLRequest() {
var xmlHttp = null;
if (location.protocol.substr(0, 4) == "http") {
try { // Firefox, Opera 8.0+, Safari
xmlHttp = new XMLHttpRequest();
} catch (e) { // Internet Explorer
try {
// i need to replace these activex controls
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
} else {
xmlHttp = new XMLCclRequest();
}
return xmlHttp;
}
1条答案
按热度按时间cigdeys31#
只有在浏览器不支持XMLHttpRequest的情况下,该代码才使用ActiveX。
例如,如果浏览器是Internet Explorer 7或更早版本。
现在没有人应该使用那个浏览器,它没有安全更新,它不能在有安全更新的操作系统上运行。
因此:
如果您需要支持这种过时的浏览器,那么您需要更改 server和client 上的代码以使用JSONP。