我正在使用JavaScript作爲客戶端腳本的Web應用程序。現在我的要求是關閉通過window.showModalDialog()
打開的所有打開的窗口。關閉瀏覽器歷史記錄中的窗口
爲此,我使用window.history.length
來閱讀瀏覽器的歷史記錄,但我不知道如何關閉每個窗口。這適用於window.open()
,但不適用於window.showModalDialog()
。
你能指導我前進嗎?
我正在使用JavaScript作爲客戶端腳本的Web應用程序。現在我的要求是關閉通過window.showModalDialog()
打開的所有打開的窗口。關閉瀏覽器歷史記錄中的窗口
爲此,我使用window.history.length
來閱讀瀏覽器的歷史記錄,但我不知道如何關閉每個窗口。這適用於window.open()
,但不適用於window.showModalDialog()
。
你能指導我前進嗎?
如下您可以關閉打開的窗口中:
要打開:
var window1=window.open("http://somedomain.com");
var window2=window.open("http://someotherdomain.com");
,收
window1.close();
window2.close();
但可以肯定你打電話window1.close()
等。在你打開它的同一個腳本上。
您不應該使用window.showModalDialog
。 Firefox has deprecated it和Chrome has removed it。也看看window.showModalDialog: What It is and Why You Should Never Use It。
showModalDialog
的想法是所有腳本在模態窗口打開時暫停。因此,使用window.close
不起作用,因爲只要該窗口處於打開狀態,就不會執行更多腳本。
一種可能性是在模態對話框中使用JavaScript,以便關閉本身。你將無法從外面關閉它。
通常只有打開窗口的頁面(和窗口本身)可以使用javascript關閉它。您無法關閉通過另一個頁面打開的窗口。 –
嗨塞德里克,它正常工作,如果我使用window.returnValue身體的onunload事件。但要求是關閉歷史。 – Prem