Javascript 始终在顶部面板上的XUL元素

Javascript 始终在顶部面板上的XUL元素,javascript,firefox-addon,xul,Javascript,Firefox Addon,Xul,嗨,我想做一个始终在顶部的xul面板。这可能吗 这是我到目前为止的代码,但工作不太好,可以从scratchpad运行: 如果用户最小化了我添加的firefox窗口,面板也会随之出现。如果用户关闭了我添加到面板中的窗口,面板也会随之关闭。在最小化窗口的最大化/恢复时,面板位置变得混乱,它会闪烁和填充。我试图添加到Services.appShell.hiddenDOMWindow,但遇到了各种各样的问题 var win = Services.wm.getMostRecentWindow('navig

嗨,我想做一个始终在顶部的xul面板。这可能吗

这是我到目前为止的代码,但工作不太好,可以从scratchpad运行:

如果用户最小化了我添加的firefox窗口,面板也会随之出现。如果用户关闭了我添加到面板中的窗口,面板也会随之关闭。在最小化窗口的最大化/恢复时,面板位置变得混乱,它会闪烁和填充。我试图添加到
Services.appShell.hiddenDOMWindow
,但遇到了各种各样的问题

var win = Services.wm.getMostRecentWindow('navigator:browser');
var panel = win.document.createElement('panel');
var screen = Services.appShell.hiddenDOMWindow.screen;
var props = {
    noautohide: true,
    noautofocus: false,
    level: 'top',
    style: 'padding:15px; margin:0; width:200px; height:200px; background-color:rgba(0,0,0,0.1); -moz-pointer-events:none; border:0; -moz-appearance:none !important;'
}
for (var p in props) {
    panel.setAttribute(p, props[p]);
}

panel.addEventListener('dblclick',function() {
    panel.parentNode.removeChild(panel);
}, false);


win.document.querySelector('#mainPopupSet').appendChild(panel);

panel.openPopup(null, 'overlap', screen.availLeft, screen.availTop);

双击面板将其删除

请提供一个比“不起作用”更好的描述。它似乎对我很有效,到底是什么问题?啊,你是对的,我忘了解释它怎么不起作用了哈哈。所以基本上,如果我最小化我添加的窗口,或者关闭窗口,面板就会随之关闭。我尝试将面板添加到一个隐藏窗口中,直到Firefox真正退出才关闭,但它没有工作:(非常感谢wlad的帮助!:)没有其他人回复我的主题:(可能是重复的啊,是的,这是我自己的主题:(我试图缩小范围,因为我没有收到任何回复。或者我试图在此主题中包含示例,以尝试获得回复:(