2017-04-12 5 views
0

Ich habe eine Webseite, die einen iFrame zeigt, der eine zufällige Website enthält. Nach 10 Sekunden möchte ich die Website innerhalb des iFrame die "Eltern" -Website ersetzen.Ersetzen Sie Dokument mit dem Iframe-Dokument

Angenommen, meine Website www.aaa.com hat einen iFrame, der die Website www.bbb.com enthält. Nach 10 Sekunden möchte ich, dass der Browser die derzeit geöffnete www.aaa.com durch www.bbb.com ersetzt, ohne die Seite neu zu laden, damit der Benutzer seinen Status nicht verliert. Grundsätzlich das Dokument ersetzen und die URL-Leiste entsprechend aktualisieren.

Ich kann nicht einfach die URL des iFrame abrufen und den Speicherort ändern, da der Benutzer zum Beispiel ein Video ansehen könnte und von vorne beginnen würde, weil die Seite neu geladen wurde.

Ich habe seit ein paar Stunden dafür gesucht und es gibt absolut nichts, was ich finden könnte.

Antwort

2

Sie können window.location = "//www.bbb.com" setzen, aber es wird nur wie üblich diese Webseite abrufen.

Sie können eine URL im Browser unter Verwendung von window.history.replaceState(null, "test", "www.aaa.com/mypage?foo=bar") setzen, aber es wird Crossdomain fehlschlagen (es wird sogar fehlschlagen mit einer Subdomain auf Ihrer Website).

Und Sie können nicht den Inhalt eines domainübergreifenden iframe erhalten.

Diese beziehen sich alle auf Ursprungssicherheit. Es kann Ausnahmen geben, zB wenn Sie erhöhte Rechte haben (Browser-Plugin). Einige Funktionalität kann mit CORS verfügbar sein und was nicht, aber Sie brauchen die Zusammenarbeit vom Besitzer der anderen Domäne.

Kurz gesagt, ist es wahrscheinlich am ehesten, den Iframe auf die volle Breite/Höhe des Fensters zu setzen.

+0

Das Browser-Plugin könnte eine Option sein. Meine Benutzer haben alle meine Erweiterung, um Benachrichtigungen zu erhalten, vielleicht kann ich sie dafür verwenden. Ich werde es mir ansehen. Danke für deine Gedanken. – DanVeira

+0

Gern geschehen .. und viel Glück! – yezzz

Verwandte Themen