Firebug给了我以下错误:
ActiveXObject is not defined
[Break on this error] var xmlhttp = new ActiveXObject("MSXML2.XmlHttp");
我已经读过ActiveX是一个Microsoft框架,它主要用于IE。我工作的地方的所有内部网页都是专门为IE 6设计和构建的,但现在他们希望我研究迁移到Firefox和Safari以及其他主要浏览器所需的内容......而且ActiveX无效Firefox浏览器。
那么我如何让Firefox内容在Firefox和Safari中专门用于在Mac上(对于初学者)?我知道有几个插件?这让事情变得更容易......比如FF ActiveX Host ...但是有没有一个程序化的解决方案呢?
如果没有解决方案,没有插件,对于这个问题,是否可以用Java重写ActiveX片段?
答案 0 :(得分:5)
我不是网络人,但看起来你的网页使用AJAX。
所以你的问题不是在其他浏览器中使用AcitveX。
尝试这样的事情:
var xmlhttp;
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
} else {
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
xmlhttp = false;
}
}
}
答案 1 :(得分:3)
除了IE支持之外,几乎所有相关浏览器的插件API都是NPAPI,例如, this introduction
我不知道任何适用于ActiveX的透明程序化资源,特别是因为它只是一种Windows技术。
替代方案可能是FireBreath项目,它可以简化NPAPI的工作,并为您提供NPAPI和ActiveX的抽象层 - 这个想法是您必须只编写一次大部分中心部分。 /> 免责声明:我是该项目的所有者之一,因此可能存在偏见;)