【问题标题】:ReferenceError: ActiveXObject is not defined in Chrome and MozillaReferenceError: ActiveXObject 未在 Chrome 和 Mozilla 中定义
【发布时间】:2017-07-21 12:16:35
【问题描述】:

我在尝试解决 ReferenceError 时遇到了很多困难:

Google Chrome 中未定义 ActiveXObject。

function WriteToFile()
{
  var fso = new ActiveXObject("Scripting.FileSystemObject");
  var s = fso.CreateTextFile("/var/www/html/nodejsphp/Test.txt",true);
  s.WriteLine('messages');
  console.log("contents of file now'some sampletext'");
  s.Close();
}

知道从哪里开始吗?

【问题讨论】:

    标签: javascript google-chrome firefox activexobject referenceerror


    【解决方案1】:

    那是因为 Google Chrome 和 Mozilla Firefox(以及 Microsoft Edge)不支持ActiveXObject,而且永远不会支持,也永远不会支持。 ActiveX 在现代网络浏览器中没有地位。

    只有 IE 支持ActiveXObject,即便如此,最新版本的 IE 也只支持对象子集(我不认为FileSystemObject 是其中之一)。

    至于从网页在本地机器的文件系统上创建一个文本文件:不,你不能那样做。 (禁用安全功能的旧版 IE 除外。)

    【讨论】:

    • “只有IE支持ActiveXObject Opera不支持ActiveXObject吗?
    • @AnnZen - 当前的 Opera 肯定不会。可能是它的某些旧版本做到了,至少以某种有限的形式(例如,可能只是 new ActiveXObject("Msxml2.XMLHTTP") 创建一个 XMLHttpRequest 对象,以便与 90 年代后期的仅限 MS 的站点向后兼容),但我不记得是这样(不是我一定有理由这样做)。
    猜你喜欢
    • 1970-01-01
    • 2012-05-26
    • 1970-01-01
    • 2022-07-21
    • 2012-08-24
    • 2012-06-21
    • 1970-01-01
    • 2013-10-23
    • 2019-02-11
    相关资源
    最近更新 更多