2013-04-18 65 views
1

这里我试图用ActiveXObject调用系统计算器。在IE中它对我来说工作得很好,但在Firefox中它不会来。我收到未定义的错误。如何在Firefox中解决这个问题?ActiveXObject(“WScript.Shell”);在Firefox中未定义?

try{ 
    if(gBrowser == 'IE'){ 
     var shell = new ActiveXObject("WScript.Shell"); 
     shell.Run("calc"); 
    } 
    else{ 
     var shell = new ActiveXObject("WScript.Shell"); 
     shell.Run("calc",1,true); 
    } 
} 
catch(e){ 
    if(gBrowser == 'IE'){ 
     alert(e.description); 
    } 
    else{ 
     alert(e.description); 
    } 
} 

回答

1

您can't.ActiveX是一项专利技术,仅由微软和IE浏览器支持它支持,Firefox不支持ActiveXObject,而且也不能访问该外壳对象。
你可以在FF中创建COM组件,但它需要一个插件和一些明确的努力。在这种情况下可能不是解决方案。

由于多种原因,Firefox不支持ActiveX技术。

  • ActiveX是仅在Windows操作系统上可用,并且需要它不会在Linux或Mac工作 结果网页。
  • ActiveX与Windows操作系统的集成使其成为恶意软件的目标。
+0

当浏览器不等于IE时,不要使用ActiveXObject。你有我的观点? –

+0

如果您仍然有任何疑问,请让我知道。 –

+0

对于跨浏览器解决方案,请改用对象元素。阅读更多关于它的信息,请访问http://help.dottoro.com/ljcnpkfv.php –

相关问题