Firefox 中的 Google Chrome 扩展程序

Firefox 中的 Google Chrome 扩展程序

Chrome 的扩展 API 比 Firefox 的限制要多得多;它主要由内容脚本(带有背景页面)和几个用于上下文菜单和弹出窗口等的钩子组成。因此,在我看来,Chrome API 的一个非常重要的子集可以在 Firefox 中实现,要么作为 Firefox 扩展,要么作为单独的“扩展编译器”,就像 Greasemonkey 脚本那样(顺便说一句,Greasemonkey 脚本也是与 Chrome 内容脚本工作方式完全相同的另一个例子)。如果实现,这将允许大多数 Chrome 扩展在 Firefox 中安装和运行。

我用 Google 搜索了一下,发现一些 提及这是一次非常古老的尝试,但所有指向实际 Mozilla 存储库的链接现已死亡。即使不是这样,我也会非常惊讶这个早期的努力是否仍然适用于 Firefox 4 或 Chrome 扩展 API 的最新更改。

所以我的问题是,有人知道 Firefox 中 Chrome Extension API 兼容层的当前最新情况吗?是否有任何扩展或扩展编译器试图解决我提出的问题?

答案1

如果真的有这样的野兽,甚至 Mozilla 开发人员都不知道它!

许多 Chrome“扩展”只是 Greasemonkey 脚本,这些脚本可以与 Firefox 上的 Greasemonkey 扩展或编译器一起使用,无需任何更改。

不幸的是,使用其他 API 的扩展必须进行移植。如果您希望将 Chrome 扩展程序移植到 Firefox,或者计划为两者编写一个扩展程序,请查看Mozilla 的新 Jetpack 扩展 API,其工作方式设计得与 Chrome 扩展程序的工作方式类似,但仍然提供原始 Firefox API 所著称的浏览器的极大增强的访问权限。

答案2

在 Mozilla 准备其下一代 Servo 引擎的同时,它也在逐步淘汰较旧的附加技术(例如 XPCOM 和 XUL),并引入新的技术,例如 WebExtensions API,它“与 Chrome 和 Opera 使用的模型基本兼容 — 使跨多个浏览器开发扩展变得更加容易”。WebExtensions API 还远未成熟,因此变化非常快;但如果您打算将 Chrome 扩展移植到 Firefox 并着眼于未来,那么我建议您安装Firefox Nightly并立即开始使用 WebExtensions API。您可以在下面的链接中阅读更多相关信息。

答案3

您可以使用扩展工厂转换工具将 Google Chrome 扩展程序转换为 Firefox 或 Safari。

相关内容