2 Stimmen

Wie kann man 2 Fenster öffnen, auch wenn der Popup-Blocker von ie6 aktiviert ist?

Es scheint, dass beim Versuch, 2 Fenster aus einer Folge von Windows.open-Aufrufen zu öffnen, nur das erste Fenster geöffnet werden kann und der Verweis auf das zweite Fenster gelöscht wird. Ich weiß, das klingt wahrscheinlich ein wenig plump, aber wir brauchen das zweite Popup.

Irgendwelche Ideen?

Leider haben wir es hier mit einem Fall zu tun, bei dem auf der Benutzerseite der Popup-Blocker in ie6 aktiviert ist.

2voto

Eric Wendelin Punkte 40906

EDIT: Mir ist gerade aufgefallen, dass Sie wahrscheinlich einen leeren ('') Fensternamen für beide Windows verwenden:

var win = window.open(url, '', 'blah=1');
var win2 = window.open(url2, '', 'stuff=1'); //later

In anderen Browsern als IE6 wird dies wahrscheinlich mit einem anderen Windows gehandhabt.

Wenn das nicht funktioniert, können Sie in Erwägung ziehen, Divs einzubauen, die über Ihrem Inhalt angezeigt werden (anstatt Popups zu verwenden), was als bessere Praxis gilt.

2voto

i_am_jorf Punkte 52346

Der IE-Popup-Blocker lässt standardmäßig nur das Öffnen eines neuen Fensters pro vom Benutzer initiierter Aktion (d. h. einem Klick auf ein Element) zu. Wenn Sie versuchen, zwei neue Fenster in demselben Handler als Reaktion auf eine einzige vom Benutzer initiierte Aktion zu öffnen, wird nur das erste Fenster erfolgreich geöffnet. Dies ist beabsichtigt.

Es gibt eine Überbrückungstaste, die die Benutzer verwenden können: im IE6 ist es, glaube ich, STRG, aber es könnte auch STRG+ALT sein, weil es in späteren Versionen geändert wurde (ich bin nicht sicher, ob das zurückportiert wurde oder nicht).

Wenn Sie zu Extras->Internetoptionen->Pop-up-Blocker->Einstellungen->Blockierungsgrad: und sehen Sie sich den Wert in der Dropdown-Box für "Hoch" an, der Ihnen in einem Klammerausdruck den Überschreibungsschlüssel angibt.

Im gleichen Einstellungsdialog können Sie diese spezielle Site auch zur Liste "Erlaubte Sites" hinzufügen, und dann lässt der Popup-Blocker alle Versuche, neue Fenster auf dieser Site zu erstellen, zu. Ich bin mir ziemlich sicher, dass diese Liste auch über Gruppenrichtlinien oder IEAK oder ähnliches vorbesetzt werden kann. Aber es ist nur eine Liste, die in der Registrierung gespeichert wird, so dass Sie auch Anmeldeskripte schreiben können, die nur Dinge hinzufügen, wenn sie hinzugefügt werden müssen.

Wenn Sie weitere Fragen haben, lassen Sie es mich wissen (ich war der Entwickler, der den IE-Popup-Blocker implementiert hat).

1voto

Mark Allen Punkte 1173

IE6 klingt so, als ob es sich um eine Unternehmensinstallation handelt. Wenn das stimmt, wenden Sie sich an Ihre Administratoren und lassen Sie Ihre interne Website über die Gruppenrichtlinien in die Intranetzone verschieben, und schalten Sie den Popup-Blocker für diese Zone aus.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X