2010-12-27 13 views
2

Ich benutze top.window.close(), um das übergeordnete Fenster zu schließen, aber es funktioniert nicht in Mozilla Firefox. Bitte schlagen Sie Alternativen vor. Der obige Code funktioniert gut für IE6.Wie Fenster in Firefox mit Javascript zu schließen?

+1

Welches Fenster möchten Sie schließen? Aktuelles Fenster, Popup-Fenster, Elternfenster? – Sarfraz

+0

mögliches Duplikat von [Wie kann ich ein Fenster mit Javascript in Mozilla Firefox 3 schließen?] (Http://stackoverflow.com/questions/760422/how-can-i-close-a-window-with-javascript-on- Mozilla-Firefox-3) – adatapost

Antwort

6

From MDC:

Diese Methode ist nur für Windows genannt werden erlaubt, die von einem Skript mit der Methode window.open geöffnet wurden. Wenn das Fenster nicht von einem Skript geöffnet wurde, wird in der JavaScript-Konsole der folgende Fehler angezeigt: Skripts schließen möglicherweise keine Fenster, die nicht vom Skript geöffnet wurden.

Wenn Sie also versuchen, ein Popup-Fenster zu öffnen und es später zu schließen, müssen Sie dies aus JavaScript heraus tun und nicht das target Attribut eines Links verwenden, laut der Dokumentation. Es scheint jedoch, dass Fenster, die sowohl mit target="_blank" als auch mit target="foo" geöffnet wurden, tatsächlich schließen (versuchten es unter Firefox 3.6.13).

Unabhängig davon, was Sie tun, können Sie ein Fenster/eine Registerkarte, das/die direkt vom Benutzer mit New Tab/Window geöffnet wurde (zumindest unter den Standardeinstellungen des Browsers) nicht schließen.

0

Dies ist, was ich verwende:

<head> 
<script language="javascript" > 
function ddd() { 

netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserWrite"); 

window.open('http://www.google.com','mywindow','width=400,height=200'); 
window.close(); 
} 
</script> 
</head> 
<body> 
<input type= "button" name="new" value="New Window" onClick="ddd()"> 
</body> 
1

Beachten Sie, dass Firefox sagen kann window.close zu ermöglichen, indem die dom.allow_scripts_to_close_windows zu true in about:config Einstellung.

Die Fähigkeit, window.close zu verwenden, wird in bug 190515 weiter diskutiert.

Verwandte Themen