Ich muss den Link auf derselben übergeordneten Seite öffnen, anstatt ihn auf einer neuen Seite zu öffnen.
Hinweis: Die iframe
und die übergeordnete Seite sind dieselbe Domain .
html
iframe
hyperlink
html-target
Haim Evgi
quelle
quelle
Antworten:
Ich fand, dass die beste Lösung darin bestand, das Basis- Tag zu verwenden. Fügen Sie dem Kopf der Seite im Iframe Folgendes hinzu:
Dadurch werden alle Links auf der Seite im übergeordneten Fenster geladen. Wenn Sie möchten, dass Ihre Links in einem neuen Fenster geladen werden, verwenden Sie:
Dieses Tag wird in allen Browsern vollständig unterstützt .
quelle
<base target>
sollte vor allen kommen<a href>
, da es den Standard-Browserkontext für folgende Links festlegt;<base href>
sollte vor einer URL-Referenz stehen (<* href>
<* src>
<form action>
<object data>
…), da hiermit die Basis- URL festgelegt wird, anhand derer relative URLs aufgelöst werden.<base
Tag kein Schließen gemäß der Spezifikation w3.org/TR/html5/document-metadata#the-base-element hat, also sollte es sein<base target="_parent" >
Verwenden Sie das Zielattribut:
quelle
<base target="_blank">
ist in Ordnung, aber die Frage hier bezieht sich auf einen Link, nicht auf das Ändern des Verhaltens aller Links auf iframe. Für mich ist das die richtige Antwort.Mit JavaScript:
quelle
Sie können beliebige Optionen verwenden
bei nur übergeordneter Seite:
Wenn Sie alle Links zur übergeordneten Seite oder zum übergeordneten Iframe öffnen möchten , verwenden Sie den folgenden Code im Kopfabschnitt des Iframes:
<base target="_parent" />
ODER
Wenn Sie einen bestimmten Link zur übergeordneten Seite oder zum übergeordneten Iframe öffnen möchten , gehen Sie folgendermaßen vor:
ODER
im Falle eines verschachtelten Iframes:
Wenn Sie alle Links im Browserfenster öffnen möchten (Weiterleitung in die Browser-URL), verwenden Sie den folgenden Code im Kopfbereich von iframe:
ODER
Wenn Sie einen bestimmten Link in das Browserfenster öffnen möchten (Weiterleitung in die Browser-URL), gehen Sie folgendermaßen vor:
oder
quelle
Es gibt ein HTML-Element namens
base
, mit dem Sie:Durch Angabe stellen
_blank
Sie sicher, dass alle Links innerhalb des Iframes außerhalb geöffnet werden.quelle
Wie bereits erwähnt, können Sie ein Zielattribut verwenden, das in XHTML jedoch technisch veraltet ist. Das lässt Sie mit Javascript, normalerweise so etwas wie
parent.window.location
.quelle
target
Attribut ist nicht mehr veraltet .Versuchen Sie das
target="_parent"
Attribut innerhalb deranchor tag
.quelle
Wenn Sie iframe auf Ihrer Webseite verwenden, kann ein Problem auftreten, wenn Sie die gesamte Seite über einen HTML-Hyperlink (Ankertag) aus dem iframe ändern. Es gibt zwei Lösungen, um dieses Problem zu mindern.
Lösung 1. Sie können das Zielattribut des Ankertags verwenden, wie im folgenden Beispiel angegeben.
Lösung 2. Sie können auch eine neue Seite im übergeordneten Fenster von iframe mit JavaScript öffnen.
Denken Sie daran, dass ⇒
target="_parent"
in XHTML veraltet ist, in HTML 5.x jedoch weiterhin unterstützt wird.Weitere Informationen finden Sie unter folgendem Link: http://www.kriblog.com/html/link-of-iframe-open-in-the-parent-window.html
quelle
Die vielseitigste und browserübergreifendste Lösung besteht darin, die Verwendung des "base" -Tags zu vermeiden und stattdessen das Zielattribut der "a" -Tags zu verwenden:
Das
<base>
Tag ist weniger vielseitig und die Anforderungen der Browser an die Platzierung im Dokument sind inkonsistent, sodass mehr browserübergreifende Tests erforderlich sind. Abhängig von Ihrem Projekt und Ihrer Situation kann es schwierig oder sogar völlig unmöglich sein, die ideale browserübergreifende Platzierung des<base>
Tags zu erreichen.Dies mit dem
target="_parent"
Attribut des<a>
Tags zu tun, ist nicht nur browserfreundlicher, sondern ermöglicht Ihnen auch die Unterscheidung zwischen den Links, die Sie im iframe öffnen möchten, und denen, die Sie im übergeordneten Element öffnen möchten.quelle
<a target="parent">
öffnet Links in einem neuen Tab / Fenster ...<a target="_parent">
öffnet Links im übergeordneten / aktuellen Fenster, ohne neue Tabs / Fenster zu öffnen. Vergiss nicht, dass du dich wunderst!quelle
Yah, ich habe gefunden
Dies ist nützlich, um alle in iframe geöffneten iframe-Links zu öffnen.
Und
Dies können wir für die ganze Seite oder einen bestimmten Teil der Seite verwenden.
Vielen Dank für Ihre Hilfe.
quelle
Versuchen
target="_top"
quelle
"_top"
dasselbe wie"_parent"
?quelle