我在Firefox中附加了一个按钮面板,当只有一个浏览器窗口打开时它正常工作,但是一旦打开更多窗口就不能正常工作。然后它就不再弹出了。这是我在main.js中的代码:
var toolbarbutton = ToggleButton({
id: "my_button",
label: "button",
icon: {
"16": self.data.url("icon16.png")
},
tooltiptext: "text",
onChange: handleChange
});
var panel_button = panel.Panel({
contentURL: self.data.url("button.html"),
height: 250,
onHide: handleHide,
contentScriptFile: [self.data.url("jquery-2.1.1.min.js"),
self.data.url("myscript.js")]
});
function handleChange(state) {
if (state.checked) {
panel_button.show({
position: toolbarbutton
});
}
}
function handleHide() {
toolbarbutton.state('window', {checked: false});
}
当多个窗口打开时,handlechange函数似乎没有做任何事情,但只有一个窗口工作正常。任何想法为什么这是以及如何解决它?感谢帮助。
编辑: 即使它适用于一个窗口,它也会在我打开另一个窗口时完全停止工作,即使我关闭除了一个窗口之外的所有窗口也无法工作。