我自己的Mozilla Firefox扩展有问题。我想在单击文档事件后打开一个新选项卡。我写了这个:
(() => {
document.addEventListener('click', () => {
console.log('click');
browser.tabs.create({});
});
})();
我的代码有什么问题?控制台打印"单击",以便事件正常工作。同样在 manifest.json 中,我有这个权限(而且只有这个(:
"permissions": [
"tabs"
]
我会非常感谢一个安慰:)
"browser.tabs" API 只能在后台脚本中使用。您正在内容脚本中使用它。WebExtensions 中的大多数 API 只能在后台脚本中工作。
来自 MDN:
用于WebExtensions的JavaScript API可以在扩展的 后台脚本以及与 扩展,包括浏览器操作或页面操作弹出窗口、侧边栏、 选项页或新标签页。其中一些 API 也可以是 由扩展的内容脚本访问(请参阅 内容脚本指南(。
请阅读更多关于网络扩展:https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API
此问题的答案包含更多信息:类型错误:浏览器未定义(Web 扩展消息传递(