Answers:
window.top.location.href = "http://www.example.com";
如前所述,将重定向父iframe。
sandbox
” - developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe 的sandbox
属性防止JavaScript的iframe中采取某些行动依据在给定的允许动作白名单上。该allow-top-navigation
属性是您可以在白名单中启用的操作之一,该操作可使此代码起作用。如果该sandbox
属性不存在,则允许执行所有操作。如果存在且为空字符串,则拒绝所有操作。
我发现也<a href="..." target="_top">link</a>
可以
window.top.location.href = "http://example.com";
window.top
指框架层次结构顶部的页面窗口对象。
或以下是替代方法(使用文档对象)
parent.document.location.href = "http://example.com";
parent.location.href = ...
。developer.mozilla.org/en/document.location
target="_parent"
对我来说很棒。简单而轻松!
@MIP是正确的,但是在Safari的较新版本中,您将需要添加沙箱属性(HTML5)以提供对iFrame的重定向访问。可以添加一些特定的值,并在它们之间添加一个空格。
参考(您需要滚动):https : //developer.mozilla.org/zh-CN/docs/Web/HTML/Element/iframe
例如:
<iframe sandbox="allow-top-navigation" src="http://google.com/"></iframe>
sandbox
属性为中的内容启用了一组额外的限制<iframe>
。该sandbox
属性的值删除了特定的限制。因此,请小心使用此功能。w3schools.com/tags/att_iframe_sandbox.asp
如果您想重定向到另一个域而无需用户执行任何操作,则可以使用带有属性的链接:
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.parent.window.location.href = 'http://google.com'
parent.location = 'url'
我们必须使用window.top.location.href从iframe动作重定向父窗口。
演示网址:
IFrame
,也。由于接受的答案针对顶部窗口,因此建议您稍微更改一下问题。