2009-04-07 6 views
3

angehängt Ich habe einige Javascript onload Ereignis des Formulars beigefügt. Dieses Skript enthält window.open. Obwohl dies in allen Browsern gut funktioniert, öffnet window.open weder ein neues Fenster, noch gibt es eine Fehlermeldung in Google Chrome und Firefox.window.open funktioniert nicht, wenn an onload-Ereignis in Chrom und Safari

Ich möchte zuerst die Bildschirmauflösung überprüfen, wenn es weniger als 1024 ist, dann würde ich es in einem neuen Fenster ohne Menü, Symbolleiste und andere öffnen, so dass der Benutzer mehr Platz zum Arbeiten hat.

+0

Einige Körper finden Sie einen Weg für mich, dies zu tun –

Antwort

7

Dies ist eine Funktion, kein Bug! :)

erinnern Sie sich zurück in den 90er Jahren, als Pop-up-Fenster genervt den Mist von allen? Nun, wegen der MASSIVE Missbrauch dieses JavaScript-Verhaltens, ist jetzt die einzige Möglichkeit zum Öffnen von Windows mit direkter Benutzerinteraktion; wie ein Klick.

+1

"Zurück in den 90er Jahren"? Diese Schrecken existieren immer noch, mein Freund! – Cerebrus

+0

Aber dies wird von den meisten Browsern unterstützt und ich möchte es in Safari und Chrom auch tun, ist es sowieso, dies zu erreichen –

+0

Wenn es von anderen Browsern "unterstützt" wird, sollten diese Browser aktualisiert werden, um unerwünschte Fenster zu blockieren. – eyelidlessness

3

Wenn Sie einen legitimen Grund zum Öffnen eines anderen Fensters haben, hängen Sie ein click Ereignis an eine button an, die so beschriftet ist, dass sie anzeigt, dass Sie ein Fenster öffnen werden. Wenn Ihr Benutzer das Fenster öffnen möchte, wird es dies tun, und es wird korrekt über die dümmsten Popup-Blocker hinauskommen. Wenn sie nicht wollen, sollten Sie überhaupt kein Fenster öffnen.

+0

Die Einstellungen geändert, die das Popup einschränken und einwandfrei funktionierten –

+1

Sie können die Einstellungen auf den Computern der Clients jedoch nicht ändern. Verlassen Sie sich nicht darauf, dass Leute ihren Popup-Blocker ausschalten, damit Sie sie nicht darüber informieren können, dass Sie ohne ihre Anfrage ein neues Fenster öffnen werden! – eyelidlessness

+0

etwas Freaky tritt bei Chrome auf. Wenn Sie eine Seite erstellen, die onload oder jQ ready ein window.open auslöst und das Fenster etwas mit dem Öffner tut (versuchen Sie, eine Farbe zu ändern), beachten Sie, dass obwohl das Kindfenster nicht angezeigt wird, die js ausgeführt wird !!! ? huh !? –

Verwandte Themen