我已经创建了一个 chrome 扩展,现在我想为 firefox 创建一个扩展。我在 chrome 扩展中使用了大部分代码。
但是现在我遇到了一个问题。在 chrome 中,扩展程序可以在工具栏上有一个图标,单击时可以弹出一个页面。但是Firefox中没有弹出窗口。我用 apanel
代替。
问题是如何关闭面板?我已经window.close()
在面板中使用了一些事件。但这将关闭整个 Firefox 窗口。
我已经创建了一个 chrome 扩展,现在我想为 firefox 创建一个扩展。我在 chrome 扩展中使用了大部分代码。
但是现在我遇到了一个问题。在 chrome 中,扩展程序可以在工具栏上有一个图标,单击时可以弹出一个页面。但是Firefox中没有弹出窗口。我用 apanel
代替。
问题是如何关闭面板?我已经window.close()
在面板中使用了一些事件。但这将关闭整个 Firefox 窗口。
使用
window.close()
在 FF 70/71 中测试
参考https://discourse.mozilla.org/t/how-to-close-popup-browser-window/13977/4
Apanel
不是窗口 - 它只是 XUL 文档中的一个标记(在您的情况下是浏览器窗口的文档)。您应该使用为此标签提供的 API 来操作它,特别是panel.hidePopup()方法:
document.getElementById("my-panel").hidePopup();