我有一个使用simple-prefs
的插件。插件使用PageMod
修改了一些网页。
我想添加一个指向这些网页的链接,这将打开插件选项。基本上,我需要的是Chrome中使用的chrome.extension.getURL('options.html');
版Firefox。
我尝试了一些旧方法。例如,使用以下URL:addons://detail/ADDON_ID/preferences
。或者来自官方文档的this method。但它们似乎都不起作用。
我该怎么做?它甚至可能吗?
答案 0 :(得分:3)
首先,您无法直接从内容脚本中打开它。您必须使用port API将内容脚本中的消息发送到您的扩展程序,在您的内容脚本中看起来像这样:
self.port.emit("openPrefs");
在您的附加模块中,您有对PageMod对象的引用(我假设它已保存在pageMod变量中),然后您使用(未记录的)sdk / preferences打开首选项页面/ utils模块:
var self = require("sdk/self");
var { open } = require("sdk/preferences/utils");
pageMod.port.on("openPrefs", function() {
open({ id: self.id });
});