簡體   English   中英

在fireFox中關閉父窗口

[英]Close Parent window in fireFox

是否可以使用JavaScript在Firefox 2.0中關閉父窗口。 我有一個打開另一個窗口的父頁面,我需要在說10秒鍾后關閉父窗口。 我嘗試了Firefox調整“ dom.allow_scripts_to_close_windows”,嘗試了延遲,但似乎無濟於事。

任何幫助將不勝感激。

謝謝

出於安全原因,僅使用打開器對象可能並不總是關閉父窗口。 您可以做的是:

在父項上,有一個名為closeWindowFromChild()的函數:

function closeWindowFromChild()
{
    this.window.close();
}

對於孩子,當您想關閉窗口時:

function closeParentWindow()
{
    opener.closeWindowFromChild();
}

這應該很好。 :-D

quirksmode剪切(編輯:添加了一些上下文,如Diodeus所建議):

理論上

opener.close()

應該是彈出窗口中的代碼:關閉打開該彈出窗口的窗口。

但是,在某些瀏覽器中,不允許自動關閉JavaScript尚未打開的窗口。 上面的行在Mac,Mozilla,Opera和OmniWeb上的Explorer中工作正常,但在Windows,Netscape 4及更低版本和iCab上的Explorer中工作不正常。 在這些瀏覽器中,要求用戶確認窗口的關閉。 對於Safari,它絕對不起作用。

令我驚訝的是,很容易解決Windows上Explorer 5.5和6中的確認框。 資源管理器僅查看頁面是否具有打開器。 如果不是,則該窗口已由用戶打開,未經確認可能不會關閉。 因此,我們需要做的就是欺騙資源管理器,以使打開的頁面具有打開器:

opener.opener = top; // or whatever, as long as opener.opener has a value;
opener.close()

此技巧在Netscape 4及更低版本和iCab中不起作用,這些瀏覽器具有更復雜的方法來確定JavaScript是否已打開窗口。

通常,您無法關閉未使用JavaScript打開自己的窗口。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM