Mozilla FF browser.tabs.create() 不起作用

Mic*_*nek 1 javascript firefox tabs firefox-addon firefox-addon-webextensions

我自己的 mozilla firefox 扩展有问题。我想在文档上的单击事件后打开一个新选项卡。我写了这个:

  (() => {
    document.addEventListener('click', () => {
      console.log('click');
      browser.tabs.create({});
    });
  })();
Run Code Online (Sandbox Code Playgroud)

我的代码有什么问题吗?控制台打印“点击”,以便事件起作用。同样在manifest.json中我有这个权限(并且只有这个权限):

"permissions": [
    "tabs"
  ]
Run Code Online (Sandbox Code Playgroud)

我将非常感谢您的回答:)

Smi*_*ver 5

“browser.tabs”API 仅适用于后台脚本。您在内容脚本中使用它。WebExtensions 中的大多数 API 只能在后台脚本中工作。

来自 MDN:

WebExtensions 的 JavaScript API 可以在扩展程序的后台脚本以及与扩展程序捆绑在一起的任何其他文档中使用,包括浏览器操作或页面操作弹出窗口、侧边栏、选项页面或新选项卡页面。其中一些 API 也可以通过扩展的内容脚本访问(请参阅内容脚本指南中的列表)。

请阅读有关 WebExtensions 的更多信息:https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API

这个问题的答案包含更多信息:TypeError: browser is undefined (Web Extension Messaging)