我需要工具栏上的插件栏和按钮上的按钮,该按钮会重定向到某种类型的设置页面(html,css,js),此页面可以与main.js交互。可以吗?如果可以,plz推荐好教程。
答案 0 :(得分:1)
添加按钮:使用widget,ActionButton or ToggleButton。
设置页面(html,css,js):使用page-mod。
与main.js互动:使用port或postMessage()
这是一个例子:
main.js:
var pageMod = require("sdk/page-mod");
var widgets = require("sdk/widget");
var tabs = require("sdk/tabs");
const data = require("sdk/self").data;
var optionsPage = pageMod.PageMod({
include: data.url("options.html"),
contentScriptFile: data.url("options.js"),
onAttach: function(worker) {
worker.port.on("callMain",function(msg){
console.log("callMain: " + msg);
});
}
});
var widget = widgets.Widget({
id: "justForTest",
label: "justForTest",
contentURL: data.url("widget.png"),
onClick: function(){
tabs.open(data.url("options.html"));
}
});
options.js:
self.port.emit("callMain", "from options.js");