2010-04-02 8 views
14

Die folgende Javascript öffnet sich ein Pop-up in Firefox, Safari, Internet Explorer und Google Chrome:Wie man window.open mit einer Symbolleiste in Google Chrome öffnet?

window.open("http://google.com", "foo", "toolbar=yes,location=yes,menubar=yes") 

jedoch in Google Chrome in der Symbolleiste (mit der üblichen Vor- und Zurück-Tasten, etc.) nicht angezeigt wird auf dem Pop-up-Fenster. (Getestet unter Windows und Mac.)

Wie kann ich das beheben? Ich möchte, dass der Benutzer in der Lage ist, mit den Werkzeugen, die ihm am vertrautesten sind, vorwärts und rückwärts zu navigieren.

Danke!

+0

Als guess I Hinting versucht Chrome, dass die Pop-up sollte eine sein separater Prozess, wie in http://www.google.com/chrome/intl/en/webmasters-faq.html#newtab beschrieben, aber dies machte keinen Unterschied. – brahn

Antwort

8

Leider unterstützt Chrome nur eine kleine Anzahl von Fensterfunktionen, wenn Sie window.open verwenden. Wenn Sie glauben, dass dies ein Fehler oder ein Problem ist, können Sie es unter [http://crbug.com]] ablegen.

Wenn Sie nur window.open (url) verwenden, öffnet sich im selben Fenster eine neue Registerkarte mit den gewünschten Schaltflächen.

+0

Danke! Gibt es eine bevorzugte Möglichkeit, ein Popup in Chrome zu öffnen, das eine Symbolleiste zulässt? – brahn

+0

@brahn Ja, Google möchte, dass Sie Tabs dafür verwenden. – Nope

5

Es ist ein Fehler offen für Chrome: https://code.google.com/p/chromium/issues/detail?id=82522

Es hat eine Menge Aufmerksamkeit von Google nicht erhalten. Stimme dafür.

+2

Ich bin eher auf der Seite von Google auf dieser Seite. Ich möchte, dass alle neuen Tabs deaktiviert werden. Das würde die Benutzer dazu zwingen, zu lernen, wie man selbst entscheidet (Alt- oder Rechtsklick), und es würde Webseiten zwingen, an ein besseres UX zu denken. Popups sind universell nutzerfeindlich oder bestenfalls schlecht durchdachte UI. –

0

Ich weiß, dies ist ein alter Beitrag, aber die neueste Antwort ist von September 2013, also nehme ich das als Grund, um mit dieser Antwort zu folgen. Entschuldige dich, wenn das nicht die richtige Etikette ist.

https://code.google.com/p/chromium/issues/detail?id=82522

, dass der Link zu dem Bug über auf der Chrome-Support-Seite ist.

Ich poste es hier in der Hoffnung, dass andere, die dieses Problem haben, die Aufmerksamkeit auf dieses Problem lenken, wie in einer früheren Antwort vorgeschlagen.

Ich entschuldige mich dafür, diesen Kommentar als separate Antwort zu veröffentlichen. Ich habe nicht genug Karma, um das richtig zu machen.

+0

Während als Fehler ausgelöst, ist es keiner. Google gestaltet es absichtlich so, dass Sie Tabs als Standard verwenden und Ihre eigenen Popup-Lösungen entwerfen können, wenn Sie dies wünschen. – Nope

1

Die einzige Option für Chrome besteht darin, kein drittes Argument anzugeben. Chrome ignoriert das dritte Argument, wie es gemäß der HTML 5-Spezifikation zu Recht erlaubt ist, aber wenn es vorhanden ist, scheint das Fenster immer in einer schwebenden Witwe ohne Steuerelemente zu öffnen.

Wenn Sie kein drittes Argument angeben, wird das Fenster, das geöffnet wird, ein neues Register sein und alle Funktionen haben, die der Benutzer benötigt.

Wenn Sie ein drittes Argument angeben, erhalten Sie ein neues unverankertes Fenster ohne andere Steuerelemente als die URL-Anzeige.

1

Aktualisierung auf das aktuelle Verhalten (Stand: 4/26/2017)

Das erwartete Verhalten ein neues PopUp-Fenster, wenn die Größe Dimensionen übergeben werden als Argumente (wenn Toolbar aktiviert ist, window.open dann sollte fügen Sie die Symbolleiste zum PopUp-Fenster hinzu). Wenn keine Abmessungen angegeben sind, wird standardmäßig eine neue Registerkarte geöffnet (in diesem Fall ist die aktivierte Symbolleiste die Standardeinstellung). (Btw, das ist FF aktuelle Verhalten (Version 54.0a2)).

Chrom Verhalten (Kanarienvogel 60.0.3079.0)

öffnen PopUp Fenster zur angegebenen Maß window.open ("https://google.com", "foo", "width = 800, height = 780")

öffnet neues Tab (Browser Standard minimierte Größe, ignoriert Größenabmessungen) window.open ("https://google.com", "foo", "Breite = 800, Höhe = 780, Symbolleiste = 1")

FF Behavior

w/Größe Maß öffnet PopUp Fenster w/o ToolBar (NO Toolbar) window.open ("https://google.com", "foo", "width = 800, height = 780")

eröffnet PopUp mit ToolBar window.open ("https://google.com", "foo", "width = 800, height = 780, toolbar = 1")

w/o Dimensionen Öffnet neues Tab windo w.open ("https://google.com", "foo") window.open ("https://google.com", "foo", "Symbolleiste = 1")

+0

Dieses Verhalten wird sich höchstwahrscheinlich nicht ändern, da Google es absichtlich so entworfen hat. Soweit ich weiß, möchten sie, dass Sie Tabs verwenden, wenn Sie vollständige Symbolleistensteuerung und nicht Popup-Fenster wollen, etwas damit zu tun, wie Popup-Fenster leicht für feindselige Absicht missbraucht werden können. – Nope

Verwandte Themen