【发布时间】:2017-10-26 11:18:02
【问题描述】:
我想为 Firefox 创建一个简单的扩展。
用户将鼠标悬停在任何页面上的某个词上
从扩展名中的文件中提取该单词的字典定义
在悬停时显示它
我是 Firefox 插件和 WebExtensions 的新手,所以我想知道的是:
我希望字典扩展使用的文件是本地的,而不是每次都引用某个在线网站。
任何给定的用户可能对整个字典的不同部分感兴趣(它包含不同语言的条目,用户可能只想要自己的 1 或 2 种语言)所以我想避免强迫每个用户下载整个字典库.
在 Firefox 5.* 之前,我看到类似的附加组件处理的方式是,它们提供的搜索和显示附加组件与字典文件分开,每个字典文件都可以作为附加组件使用,只有在您安装了主插件后才能真正做事。
但是,这些示例似乎都没有针对 WebExtensions API 进行更新,并且不支持更新版本的 Firefox。 到目前为止,我还无法找到如何在网络扩展之间进行通信。
我的问题是,我如何在 2 个或更多合作扩展之间共享信息以实现我所描述的。 实际上,如果由于某种我不知道的原因这看起来真的很愚蠢,请指出任何更合理的替代方案,使我能够将字典文件与主扩展分开处理。
我发现的可能相关的问题: Communicating between 2 Firefox Add-Ons (Cross-Extension Communication) 然而,这是 2010 年的,因此据我所知已经过时了。
Mozilla Addon Development - Communicating between windows with different domains 有点类似的情况,但他们想从在线资源而不是本地资源中提取定义。
我在 Mozilla 浏览器扩展网站上发现的最接近的东西是插件和一些本机应用程序之间的通信,这并不是我认为的需要。
【问题讨论】:
标签: firefox firefox-addon communication firefox-addon-webextensions