2012-08-06 82 views
2

我試圖通過單擊按鈕關閉當前窗口。我知道window.close()只能在窗口擁有javascript時才能使用。window.close在firefox中不工作,使用window.open後


於是我就用window.open()之前,然後關閉該窗口,如:

self.name = "close"; 
window.open("","close"); 
self.opener = null; 
self.close();` 

這個工程在Chrome和舊版本的Firefox,但不是在FF14。 那麼如何關閉FF14中的一個窗口? 謝謝!

我在FF控制檯中運行以下JavaScript。 它適用於IE和Chrome。

win=window.open('','_self'); 
win.close();------undefined 
+2

告訴我們你的代碼? – 2012-08-06 06:42:14

+1

您只能關閉使用window.open打開的窗口 - 您不能(通過代碼)關閉打開彈出窗口的窗口(至少不是在每個瀏覽器中)。另外檢查這個問題的答案http://stackoverflow.com/questions/979696/window-opener-close-issue-for-javascript – WTK 2012-08-06 08:33:34

回答

-1

上面提到的評論是正確的window.close()只有在使用window.open()打開窗口時纔有效。

試試這個代碼:

<a href="#" onclick="javascript:var win = window.open('', '_self');win.close();return false;">Close</a> 

這在IE,Chrome和Firefox的工作對我來說(即使是FF14)。 HTH

+0

我在FF控制檯中運行以下JavaScript。 IE和鉻會work.but FF會告訴我win.close()未定義。 win = window.open('','_ self'); win.close(); ------ undefined – sugarball 2012-08-09 02:11:41

+0

我檢查了FF 14的上述代碼,它在我的最後工作正常。檢查以下鏈接:http://codeissue.com/issues/i74ddb15295c601/window-close-does-not-work-in-firefox-and-chrome – 2012-08-09 09:22:13

+0

也許你可以在about:config中檢查你的dom.allow_script_to_close_windows。我認爲你的結論是真的,但默認情況下是錯誤的,我不能要求最終用戶修改這個設置。 – sugarball 2012-08-10 09:09:34

相關問題