Firefox 未定义ActiveX对象

Firefox 未定义ActiveX对象,firefox,activex,firebug,activexobject,Firefox,Activex,Firebug,Activexobject,Firebug给了我以下错误: ActiveXObject is not defined [Break on this error] var xmlhttp = new ActiveXObject("MSXML2.XmlHttp"); 我已经读到ActiveX是微软的一个框架,它主要用于IE。我工作的地方所有的内部网页都是专门为IE 6设计和构建的,但现在他们想让我研究迁移到Firefox、Safari和其他主要浏览器需要什么。。。ActiveX在Firefox中不起作用 那么,我如何让Ac

Firebug给了我以下错误:

ActiveXObject is not defined
[Break on this error] var xmlhttp = new ActiveXObject("MSXML2.XmlHttp"); 
我已经读到ActiveX是微软的一个框架,它主要用于IE。我工作的地方所有的内部网页都是专门为IE 6设计和构建的,但现在他们想让我研究迁移到Firefox、Safari和其他主要浏览器需要什么。。。ActiveX在Firefox中不起作用

那么,我如何让ActiveX的东西在Firefox和Safari中工作,特别是在Mac上(对于初学者而言)?我知道有几个插件?让事情变得更容易。。。像FF ActiveX主机。。。但是有没有一个程序化的解决方案呢


如果没有解决方案,没有插件,对于这个问题,是否可以用Java重写ActiveX片段?

插件API除了IE支持外,几乎所有相关浏览器都支持,请参见例如

我不知道有任何用于调整ActiveX的透明编程方案,特别是因为它是一种仅限Windows的技术

另一种选择可能是项目,它简化了NPAPI的使用,并在NPAPI和ActiveX上为您提供了一个抽象层,即您只需编写一次大多数核心部分。

免责声明:我是项目的所有者之一,因此可能有偏见;)

我不是一个网络爱好者,但你的网页似乎使用了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; 
    }
  }
}

:)我不在乎你的观点是否有偏见:)FireBreath似乎是一个很酷的项目,我会更深入地研究它。谢谢你的回复。。。我现在有一些阅读要做。。。我为Mac做了一个插件项目,我正在尝试测试这个插件,但是Firefox告诉我需要安装缺少的插件。它告诉我没有找到合适的插件,那么我如何让我的插件与firefox一起工作?@Hristo:您是否安装了
MyProject.plugin
,例如,将其放入
~/Library/Internet\plugins/
?如果你不介意谷歌群组的话,fb开发者的邮件列表会得到比我更多人的快速回复:)我在谷歌群组上查看维基,一定是忽略了把它放进~/Library/…的部分。。。部分谢谢这似乎消除了这个错误,但是在代码后面的地方出现了另一个错误,即
xmlhttp.Open(“GET”,PageURL,false)
Eugene有一个很好的观点——我不知何故假设您正在使用一些定制的
ActiveXObject
。您认为还是仅限于该XmlHttp对象?