新しいページで開くのではなく、同じ親ページでリンクを開く必要があります。
注意:iframe
と親ページは 同じドメイン です。
最善の解決策は base タグを使用することです。 iframeのページの先頭に次のコードを追加します。
<base target="_parent">
これは親ウィンドウのページのすべてのリンクをロードします。リンクを新しいウィンドウにロードする場合は、次のようにします。
<base target="_blank">
このタグは 完全にサポートされている すべてのブラウザで/です。
Target-attributeを使用してください。
<a target="_parent" href="http://url.org">link</a>
JavaScriptの場合
window.parent.location.href= "http://www.google.com";
あなたは任意のオプションを使用することができます
親ページのみの場合:
all link を親ページまたは親iframeに開きたい場合は、iframeのheadセクションで次のコードを使用します。
<base target="_parent" />
_または_
特定のリンク を親ページまたは親iframeに開きたい場合は、次のようにします。
<a target="_parent" href="http://specific.org">specific Link</a>
<a href="http://normal.org">Normal Link</a>
_または_
入れ子になったiframeの場合:
all link をブラウザウィンドウに開きたい(ブラウザURLでリダイレクトする)場合は、iframeのヘッドセクションに次のコードを使用します。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script type="text/javascript">
$(window).load(function(){
$("a").click(function(){
top.window.location.href=$(this).attr("href");
return true;
})
})
</script>
_または_
特定のリンク をブラウザウィンドウに開く(ブラウザURLにリダイレクトする)場合は、次のようにします。
<a href="http://specific.org" target="_top" >specific Link</a>
または
<a href="javascript:top.window.location.href='your_link'">specific Link</a>
<a href="javascript:top.window.location.href='http://specific.org'">specific Link</a>
<a href="http://normal.org">Normal Link</a>
base
というHTML要素があります。
ページ上のすべてのリンクのデフォルトのURLとデフォルトのターゲットを指定します。
<base target="_blank" />
_blank
を指定することで、 iframe の内側のすべてのリンクが外側に開かれるようにします。
前述のように、target属性を使用できますが、XHTMLでは技術的には推奨されていませんでした。そのため、JavaScriptを使用する必要があります。通常はparent.window.location
のようなものです。
target="_parent"
内でanchor tag
attribute を試してください。
最も用途が広く最もクロスブラウザのソリューションは "base"タグの使用を避け、代わりに "a"タグのtarget属性を使うことです:
<a target="_parent" href="http://www.stackoverflow.com">Stack Overflow</a>
<base>
タグは汎用性が低く、ブラウザはドキュメント内に配置するための要件が矛盾しているため、ブラウザ間のクロステストがさらに必要になります。あなたのプロジェクトや状況によっては、理想的なクロスブラウザ配置の<base>
タグを実現するのは困難であるか、あるいは完全に実行不可能でさえあります。
target="_parent"
タグの<a>
属性を使ってこれを行うことは、よりブラウザに優しいだけでなく、iframeで開きたいリンクと親で開きたいリンクを区別することもできます。
<a target="parent">
は新しいタブ/ウィンドウでリンクを開く... <a target="_parent">
は新しいタブ/ウィンドウを開かずに親/現在のウィンドウでリンクを開く。 Don't_forget_that_underscore!
Webページでiframeを使用している場合は、iframeからHTMLハイパーリンク(アンカータグ)を使用してページ全体を変更するときに問題が発生する可能性があります。この問題を軽減するには2つの解決策があります。
解決策1.次の例に示すように、アンカータグのtarget属性を使用できます。
<a target="_parent" href="http://www.kriblog.com">link</a>
解決策2. JavaScriptを使ってiframeから親ウィンドウで新しいページを開くこともできます。
<a href="#" onclick="window.parent.location.href='http://www.kriblog.com';">
覚えておいてください⇒target="_parent"
はXHTMLでは非推奨ですが、それでもHTML 5.xではサポートされています。
次のリンクからもっと読むことができます http://www.kriblog.com/html/link-of-iframe-open-in-the-parent-window.html
うん私は見つけた
<base target="_parent" />
これは、iframeで開いているすべてのiframeリンクを開くのに役立ちます。
そして
$(window).load(function(){
$("a").click(function(){
top.window.location.href=$(this).attr("href");
return true;
})
})
これは、ページ全体またはページの特定の部分に使用できます。
ご協力ありがとうございました。
target="_top"
を試す
<a href="http://example.com" target="_top">
This link will open in same but parent window of iframe.
</a>
<script type="text/javascript"> // if site open in iframe then redirect to main site
$(function(){
if(window.top.location != window.self.location)
{
top.window.location.href = window.self.location;
}
});
</script>