关闭Firefox窗口的Firefox扩展

关闭Firefox窗口的Firefox扩展,firefox,firefox-addon,xul,Firefox,Firefox Addon,Xul,我正在开发一个firefox扩展,我希望能够关闭firefox窗口本身(无需任何确认)。例如,如果已经加载了特定的URL,我想关闭firefox窗口。使用gBrowser可以轻松打开/关闭选项卡,关闭firefox窗口如何 谢谢这听起来很明显,但您使用它来关闭XUL窗口。至于警告,最好的方法可能是暂时将browser.tabs.warnOnClose首选项切换到false。像这样的方法应该会奏效: Components.utils.import(“resource://gre/modules/S

我正在开发一个firefox扩展,我希望能够关闭firefox窗口本身(无需任何确认)。例如,如果已经加载了特定的URL,我想关闭firefox窗口。使用gBrowser可以轻松打开/关闭选项卡,关闭firefox窗口如何


谢谢

这听起来很明显,但您使用它来关闭XUL窗口。至于警告,最好的方法可能是暂时将
browser.tabs.warnOnClose
首选项切换到
false
。像这样的方法应该会奏效:

Components.utils.import(“resource://gre/modules/Services.jsm");
var prefName=“browser.tabs.warnOnClose”;
var restorePref=假;
if(Services.prefs.getBoolPref(prefName))
{
Services.prefs.setBoolPref(prefName,false);
restorePref=true;
}
window.close();
if(restorePref)
Services.prefs.setBoolPref(prefName,true);
退出Firefox


重新启动Firefox


附加有用标志 eConsiderQuit:如果所有窗口都关闭,尝试退出。
eattentquit:尝试关闭所有窗口,如果成功则退出。
eForceQuit:强制关闭所有窗口,然后退出。
eRestart:退出后重新启动应用程序。应用程序将使用相同的配置文件和空命令行重新启动

Components
  .classes['@mozilla.org/toolkit/app-startup;1']
  .getService(Components.interfaces.nsIAppStartup)
  .quit(Components.interfaces.nsIAppStartup.eAttemptQuit)
var boot = Components.classes["@mozilla.org/toolkit/app-startup;1"].getService(Components.interfaces.nsIAppStartup);
boot.quit(Components.interfaces.nsIAppStartup.eForceQuit|Components.interfaces.nsIAppStartup.eRestart);