2010-01-09 17 views
38

Im Versuch, ein untergeordnetes Fenster mit Javascript und in firefox alles zu schließen funktioniert gut, aber in Chrom das Fenster doesnt schließenAusgabe mit window.close und Chrom

hier ist das, was im mit versucht

$(document).ready(function() { 
    if (window.opener && !window.opener.closed) 
     window.opener.location = "http://www.website.com" 
    window.close(); 
}); 

I ein Vorschlag auf google, aber ohne Erfolg.

Wer hat ein ähnliches Problem oder kennt einen Work-Around?

Antwort

85

Ich weiß, dass diese Frage alt ist, aber ich lief auf das gleiche Problem. Dieser arbeitete für mich:

window.open('', '_self', ''); //bug fix 
window.close(); 
+0

Ja, das funktioniert auch für mich. @Patrick sollte es als die Antwort markieren. –

+11

Warum funktioniert das? –

+0

@Long Ich denke, weil der Bug-Fix mit ersten window.open() abgestürzt ist, so sollte es verzögert werden. @Warren Danke. –

10

wenn vorher öffnen Sie ein anderes Fenster von window.open()

dies nicht funktionieren:

window.open(...) 
window.open('', '_self', ''); 
window.close(); 

aber die Arbeit:

window.open(...); 
setTimeout(function(){ 
    window.open('', '_self', ''); 
    window.close(); 
}, 100); 
2

So etwas sollte auch funktionieren:

setTimeout (function() { window.close(); }, 50);

+3

Aber ein bisschen hacky obwohl. – BalusC

+0

Funktioniert nicht für mich - es ist kein Fehler, es tut einfach nichts. –

1

Ich denke, es funktioniert im Chrome Kiosk (Vollbild) -Modus. Erfolgreich versucht.

1

top.window.close() funktioniert für mich. Getestet auf IE, FF, Chrome, Safari und Opera.

0

Dieser arbeitete für mich

var win = window.open ("about: blank", "_self"); win.close();