运行firefox示例扩展时出现“浏览器未定义”错误

时间:2019-01-09 16:24:24

标签: javascript firefox firefox-addon

我有GNU / Linux系统安装的60.4.0esr(64位)。运行find-across-tabs扩展名时出现错误

ReferenceError: browser is not defined[Learn More]
find.js:1:5
<anonymous>
file:///home/username/webextensions-examples-master/find-across-tabs/find.js:1:5

我能够正确运行borderify之类的扩展程序

1 个答案:

答案 0 :(得分:4)

我认为错误很明显。这里的问题是

  

ReferenceError:未定义浏览器

在:

let backgroundPage = browser.extension.getBackgroundPage();

他们可能引用了mozilla.org docs。您可以在那里测试示例,看看是否出错。

您可以直接在popup中运行该函数。例如:

假设后台脚本定义了一个函数foo():

// background.js

function foo() {
  console.log("I'm defined in background.js");
}

在弹出窗口中运行的脚本可以像这样直接调用此函数:

// popup.js

var page = browser.extension.getBackgroundPage();
page.foo(); // -> "I'm defined in background.js"

注意::问题是您是否未使用私有浏览模式,因为该功能无法使用。这是由于this错误。它将始终返回null