问题标签 [firefox-addon-webextensions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
219 浏览

javascript - Firefox/Chrome 扩展:创建新标签时如何打开链接?

Firefox WebExtension上工作。

当我打开一个新选项卡时,下面的代码有效,但是当我单击链接时它会更新任何当前选项卡。

如何使用query选择新标签? 还有另一种方法可以做到这一点吗?

0 投票
2 回答
33 浏览

firefox-addon-webextensions - 关于方法和工作流程

所以,编辑代码,压缩到 xpi,安装插件,测试,重复。

很适合测试几个例子,但很快就会变得乏味。一定有更聪明的方法,肯定有更聪明的方法,但我不够聪明,自己找不到。帮助 ?你是怎么做到的?目标是通过快速测试功能和想法来平滑学习曲线。

我想到了以下,但真的不知道它是否可以工作,也不知道从哪里开始:

  • 将插件脚本链接到外部js文件,这样你就可以一劳永逸地安装插件,然后快速随意编辑外部文件
  • 利用更新机制,但我不确定它是否与 WebExtensions 相关
  • 制作一个临时网络扩展来更新我正在开发的那个
  • ...?
0 投票
1 回答
1790 浏览

javascript - Firefox 插件中的 OnBeforeRequest URL 重定向(从 Chrome 扩展转换)

我想将我的 Chrome 扩展程序转换为 Firefox。到目前为止一切顺利,除了我webRequest.onBeforeRequest在 Chrome 扩展程序中有一个 url 重定向,这在 Firefox WebExtensions 中是不允许的

现在我不确定如何在 Firefox 中实现这一点。
在 Chromebackground.js中,它看起来像这样:

0 投票
0 回答
130 浏览

javascript - Firefox插件开发中与后台脚本和弹出脚本通信的正确方法是什么

我正在开发一个 Firefox 插件作为 Firefox WebExtention。我在使用后台脚本和弹出脚本传递消息时遇到问题。后台脚本可以读取所有消息,但弹出脚本无法从后台脚本读取消息。

后台脚本中的消息传递组件

弹出脚本中的消息传递组件

我也在与弹出脚本中的内容脚本进行通信,并且效果很好

0 投票
1 回答
257 浏览

google-chrome-extension - Mozilla WebExtensions 起始页

我正在尝试使用 WebExtensions 在 Firefox 中创建自定义起始页。在 Chrome 中,我可以在 manifest.json (chrome_url_overrides) 中设置页面,但 Firefox 不支持此功能。我成功了chrome.tabs.onCreated.addListenerchrome.tabs.update但我在脚本处理之前的短时间内看到了标准主页。如何通过 WebExtensions 更定性地实现它?

0 投票
1 回答
181 浏览

firefox - Firefox WebExtension 的低级 API

是否可以在 Firefox WebExtensions 中使用nsInterface或其他低级代码,如 Add-on SDK 允许:

如果是这样,我怎样才能获得低级 API 的参考?

0 投票
1 回答
1108 浏览

javascript - Firefox WebExtension 通知中未显示按钮

我正在开发一个 Firefox WebExtension,我试图在其中显示带有按钮的通知。我在 Chrome 中有这个工作。根据文档,Firefox 支持此功能。按钮在NotificationOptions中列为可选。

当我运行此代码时,我会看到通知。但是,我没有看到一个按钮。我错过了什么吗?它实际上不支持吗?通知的唯一示例不使用按钮,因此没有帮助。

0 投票
1 回答
2929 浏览

javascript - Firefox 扩展弹出窗口不会调整大小

我正在将扩展从 Chrome 移植到 Firefox。弹出窗口有几个可以显示的不同大小的元素。我遇到的问题是当元素更改或body调整大小时,显示弹出窗口的“窗口”不会调整大小。

这个问题似乎在 chrome 中不存在,有谁知道我做错了什么或者这是 Firefox 中的错误?我在下面包含了更改正文大小的代码,这适用于 chrome,但似乎不适用于 Firefox。

我也试过这个,$('body').css()以防万一animate(),不管用。

此外,如果我在其中添加背景body并缩小它,则可以看到背景在改变大小,而包含的窗口不会改变大小。

编辑: 添加更多信息以澄清问题

该扩展是一个 WebExtension 附加组件 ( https://developer.mozilla.org/en-US/Add-ons/WebExtensions )

清单.json

弹出窗口.htm

js/popup.js

加载上述扩展程序后,弹出窗口以其初始大小 (200x200) 正确显示。但是,当调整正文大小时,弹出窗口的大小不会更新。同样的扩展在 Chrome 中按预期工作(弹出调整大小)。

0 投票
1 回答
317 浏览

javascript - Firefox WebExtension - browser.i18n.getMessage 的问题

在 Firefox WebExtension 中调用browser.i18n.getMessage('myKey')时,如果“myKey”不存在,后台控制台中会显示异常:

在 Chrome 中,它会静默失败并返回一个空字符串。

在其他时候,我发现它返回一个字符串??。这与 Chome 不同。

0 投票
1 回答
1264 浏览

javascript - Firefox WebExtension - chrome.tabs.query

当我这样做时:

我收到一个错误:

但是,这是我需要在chrome.tabs.query通话中匹配的 URL。

有什么建议么?