我需要使用什么JavaScript从iframe重定向父窗口?
我希望他们点击一个超链接,使用JavaScript或任何其他方法,将父窗口重定向到一个新的URL。
我需要使用什么JavaScript从iframe重定向父窗口?
我希望他们点击一个超链接,使用JavaScript或任何其他方法,将父窗口重定向到一个新的URL。
当前回答
如果你想重定向到另一个域,而不需要用户做任何事情,你可以使用属性链接:
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()命令必须在声明链接之后出现。
其他回答
这将解决痛苦。
<script>parent.location='http://google.com';</script>
试着用
window.parent.window.location.href = 'http://google.com'
@MIP是正确的,但是对于更新版本的Safari,你将需要添加沙盒属性(HTML5)来重定向访问iFrame。有一些特定的值可以在它们之间添加一个空格。
参考(你需要滚动): https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe
Ex:
<iframe sandbox="allow-top-navigation" src="http://google.com/"></iframe>
如果你想重定向到另一个域,而不需要用户做任何事情,你可以使用属性链接:
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()命令必须在声明链接之后出现。
我发现<a href="…" target="_top">link</a>也能工作