12得票1回答
如何修复Chrome/Firefox网页扩展程序中的TypeError:browser.storage未定义错误?

注 - 这个问题基于这个问题(虽然不必阅读前一个问题): 如何在不同的HTML文件中设置textarea的值? 我有以下代码,它应该将一个值添加到Firefox/Chrome的本地存储中,然后更改扩展程序的UI(代码会根据使用哪个浏览器略有不同,目前,该代码是用于Firefox扩展程序的):...

12得票1回答
使用由弹出窗口注入的executeScript()函数将数据从弹出窗口传递给内容脚本。

我的Chrome扩展程序弹出窗口中有一个文本区和一个按钮。我希望用户在文本区中输入所需的文本。然后,一旦他们点击按钮,它将注入内容脚本以更改当前页面上具有<textarea class="comments"> 的字段的文本为用户在Chrome扩展程序弹出窗口中输入的文本。 我的问...

12得票1回答
Chrome标签页查询返回空白标签数组

我正在尝试将一个在Firefox中运作的Web扩展程序移植到Chrome,但遇到了一些问题。我需要从背景脚本发送消息到内容脚本。我最初从Firefox构建时使用了一个端口,但因为Chrome不断出现错误,所以我改用了chrome.tabs.query()。但是现在,在query()下,它在Fi...

11得票1回答
IntelliJ Firefox Web扩展开发

我正在学习如何使用Firefox Web扩展API,并且正在使用IntelliJ。 有没有一种方法可以获得API的代码完成/建议? 我按照下面答案中的步骤进行了操作,但似乎Firefox没有完整的方法。 https://dev59.com/vWYr5IYBdhLWcg3wDF_P#2...

11得票3回答
火狐浏览器扩展:调用文件上的executeScript时出现错误但代码没问题

当打开一个新的选项卡时,我想执行一个脚本。 在我的后台脚本中,我有:var listener = function (tab) { browser.tabs.executeScript(null, { file: "content_scripts/contentScript.js" ...

11得票2回答
从页面操作中获取标签页URL(WebExtensions,Android)

我希望在页面操作弹出窗口中获取当前选项卡的URL地址。 起初似乎很明显:只需使用tabs API。但如果我正确解释文档的话,它似乎在Android上不可用。因此,我继续寻找其他方法,并找到了onClicked事件的pageAction API。 pageAction API 似乎被列为与An...

11得票2回答
在Chrome扩展程序中,如何从父内容脚本向特定子iframe中的内容脚本发送跨源消息?

我正在开发一个Chrome扩展程序,并使用一个清单,目前允许访问所有主机。背景脚本将内容脚本注入到所有框架中。在DOM加载后,顶层页面/帧中的内容脚本开始遍历DOM树。当Walker遇到一个iframe时,它需要向与该iframe窗口关联的特定内容脚本(可能是跨源)发送消息,以开始其工作并包含...

11得票1回答
使用chrome.tabs还是browser.tabs以实现浏览器兼容性

我正在将我的 Chrome 扩展移植到 Firefox。 根据 MDN,应该有一个 browser.tabs API 可以被 Chrome 支持。 然而,在 Chrome 稳定版中,browser 不是一个对象。与此同时,chrome.tabs 在 Firefox 中可以正常工作。 阅读...

11得票3回答
为Firefox扩展程序添加一个键盘快捷键

我正在开发一个Firefox扩展程序。我已经在“工具”菜单中添加了一个新项目来打开我的扩展程序,但我想要添加一个键盘快捷键来打开我的扩展程序(例如'control + alt + x')。

11得票8回答
将Web扩展转换为Safari应用程序扩展。

我有一个Web扩展程序,目前可以在Chrome、Firefox和Opera上运行。 现在我想知道是否有一种方法可以使用相同的代码构建Safari应用扩展程序,可能类似于PhoneGap(将所有现有JS代码包装在Safari应用扩展项目中),或者是否存在JavaScript标签处理等限制,某些事...