我基本上有一个页面显示已刷新到浏览器的“处理”屏幕。稍后我需要重定向此页面,目前我们使用元刷新,这通常工作正常。
使用包括 3D 安全在内的新支付系统,我们最终可能会在 iframe 中被第三方引导回我们的网站。
我需要能够使用 javascript 或元刷新从该页面重定向,并在 iframe 存在时从 iframe 中退出。
干杯!
(我之前已经摆脱了 iframe,但找不到我的旧代码,谷歌搜索也没用,我认为现在是尝试 Stackoverflow 的最佳时机!)
我基本上有一个页面显示已刷新到浏览器的“处理”屏幕。稍后我需要重定向此页面,目前我们使用元刷新,这通常工作正常。
使用包括 3D 安全在内的新支付系统,我们最终可能会在 iframe 中被第三方引导回我们的网站。
我需要能够使用 javascript 或元刷新从该页面重定向,并在 iframe 存在时从 iframe 中退出。
干杯!
(我之前已经摆脱了 iframe,但找不到我的旧代码,谷歌搜索也没用,我认为现在是尝试 Stackoverflow 的最佳时机!)
所以我在我的重定向页面中添加了以下内容。幸运的是,他们没有发布任何内容,因此可以简单地重定向。也可以使用 javascript,因为它需要到达站点中的那个点。
<script type="text/javascript" language="javascript">
if (top.frames.length>0)
setTimeout("top.location = window.location;",100);
</script>
我正在做类似的事情以将旧站点保留在其框架集中:
<SCRIPT TYPE="text/JavaScript">
if (window == top){top.location.replace("/foo.html");}
</SCRIPT>
因此,要突破 iframe,只需将 == 更改为 !=
我看到您在示例中使用了 setTimeout 。等待突破 iframe 是一项要求,还是您希望它立即发生?
如果您使用的是 JavaScript:
parent.document.location = "http://www.google.com"
如果您使用的是 html:
<a href="http://www.google.com" target=_top >Google</a>