我需要使用什么JavaScript从iframe重定向父窗口?

我希望他们点击一个超链接,使用JavaScript或任何其他方法,将父窗口重定向到一个新的URL。


当前回答

试着用

window.parent.window.location.href = 'http://google.com'

其他回答

window.top.location.href = "http://example.com";

窗口。Top指的是位于框架层次结构顶部的页面的窗口对象。

@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>

重定向父窗口中的iframe通过相同父窗口中的iframe:

window.parent.document.getElementById("content").src = "content.aspx?id=12";

如果你想重定向到另一个域,而不需要用户做任何事情,你可以使用属性链接:

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()命令必须在声明链接之后出现。

我们必须使用window.top.location.href从iframe操作重定向父窗口。

演示网址: