2017-07-03 2 views
1

Ich habe diese Frage oft hier gefragt, aber ich konnte nicht eine Antwort bekommen, die funktioniert! es funktioniert nicht und es bleibt auf der gleichen SeiteUmleiten zu einem neuen Tab in PHP

echo '<script>window.open("load.php","_blank)</script>'; 

aus irgendeinem Grunde:

ich versuche zu einem load.php ZU EINER NEUEN TAB mit dem folgenden Skript zu umleiten.

Ich benutze Chrom!

Gibt es eine Möglichkeit, auf eine neue Registerkarte umzuleiten? vielen dank

+1

Die meisten Browser stoppen dies durch Deflit – rtfm

+1

wie @rtfm sagte, dieses automatische Öffnen wird von den Browsern verhindert, weil Sie das gleiche Skript in der load.php rendern könnten, was zu einer Endlosschleife beim Öffnen neuer Registerkarten führen würde. Der Browser wird es nur programmgesteuert auf einige Benutzerereignisse erlauben, wie ein Klick – webdeb

Antwort

1

Die meisten Browser window.open blockiert, es sei denn es ist ein Ergebnis einer direkten Interaktion mit dem Benutzer das heißt der onclick Ereignis Handle eines Anker-Tag gefeuert ist.

Es gibt Möglichkeiten, wie Sie Popup-Blocker versuchen und "tricksen" können, aber es ist unzuverlässig und wird als schlechte Übung angesehen. Wenn ein Benutzer einen Popup-Blocker aktiviert hat, sollte er respektiert werden.

Was würde ich vorschlagen, ist auch einen Link auf Ihrer Seite entlang der Linien des folgenden hinzufügen:

<a href="load.php" target="_blank">Click here</a> if the window does not open in a seperate window. 

Dies würde sicherstellen, dass der Benutzer nach wie vor das Fenster öffnen kann manuell sollte es von einem Popup unterdrückt werden Blocker.

+0

vielen dank, das ist was ich getan habe. –

0

Sie fehlen ein Anführungszeichen nach _blank.

Versuchen Sie folgendes:

echo '<script>window.open("load.php","_blank")</script>'; 
+0

danke für die schnelle Antwort, aber immer noch wird die neue Registerkarte von Chrome blockiert! –

Verwandte Themen