正确的方法是打开一个新的对话框,以便用户在关闭模态对话框之前无法返回主窗口。
典型的模态窗口由alert()函数创建。
我尝试过这样做没有成功:
.openWindow(null, "chrome://myapp/content/mywindow.xul","mywindow",
"chrome,centerscreen,all,modal",null);
答案 0 :(得分:1)
您忘了提到您正在使用nsIWindowWatcher。
对于要进行模态化的窗口,您需要指定需要模态的窗口。如果openWindow()
调用的第一个参数是null
,那么窗口观察者将不知道哪个窗口打开了对话框(在关闭对话框之前需要暂停哪个窗口)。换句话说:
watcher.openWindow(mainWin, "chrome://myapp/content/mywindow.xul", "mywindow",
"chrome,centerscreen,all,modal", null);
或更简单:
mainWin.openWindow("chrome://myapp/content/mywindow.xul", "mywindow",
"chrome,centerscreen,all,modal");