iframeから親ウィンドウをリダイレクトするにはどのJavaScriptを使用する必要がありますか?
JavaScriptまたはその他の方法を使用して、親ウィンドウを新しいURLにリダイレクトするハイパーリンクをクリックしてもらいたい。
iframeから親ウィンドウをリダイレクトするにはどのJavaScriptを使用する必要がありますか?
JavaScriptまたはその他の方法を使用して、親ウィンドウを新しいURLにリダイレクトするハイパーリンクをクリックしてもらいたい。
window.top.location.href = "http://www.example.com";
最上位の親 Iframe をリダイレクトします。
window.parent.location.href = "http://www.example.com";
親 iframe をリダイレクトします。
<a href="..." target="_top">link</a>
それも機能することがわかりました
window.top.location.href = "http://example.com";
window.top
フレーム階層の最上位にあるページのウィンドウオブジェクトを参照します。
target="_parent"
私にとってはうまくいきました。簡単で手間いらず!
または代替手段は次のとおりです(ドキュメントオブジェクトを使用)
parent.document.location.href = "http://example.com";
@MIP is right, but with newer versions of Safari, you will need to add sandbox attribute(HTML5) to give redirect access to the iFrame. There are a few specific values that can be added with a space between them.
Reference(you will need to scroll): https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe
Ex:
<iframe sandbox="allow-top-navigation" src="http://google.com/"></iframe>
これで不幸は解決します。
<script>parent.location='http://google.com';</script>
ユーザーが何もしなくても別のドメインにリダイレクトしたい場合は、プロパティのリンクを使用できます。
target="_parent"
前述のように、次を使用します。
document.getElementById('link').click();
自動的にリダイレクトするようにします。
例:
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<a id="link" target="_parent" href="outsideDomain.html"></a>
<script type="text/javascript">
document.getElementById('link').click();
</script>
</body>
</html>
注: JavaScript の click() コマンドは、リンクを宣言した後に指定する必要があります。
iframeからリダイレクトすることは可能ですが、親から情報を取得することはできません。
使ってみて
window.parent.window.location.href = 'http://google.com'
親ウィンドウの iframe を同じ親の iframe でリダイレクトします。
window.parent.document.getElementById("content").src = "content.aspx?id=12";