【问题标题】:Busting out of an iframe using meta-refresh or javascript?使用元刷新或 javascript 退出 iframe?
【发布时间】:2010-09-21 06:21:48
【问题描述】:

我基本上有一个页面显示已刷新到浏览器的“处理”屏幕。稍后我需要重定向此页面,目前我们使用元刷新,这通常工作正常。

使用包含 3D 安全功能的新支付系统,我们最终可能会在 iframe 中被第三方引导回我们的网站。

我需要能够从该页面重定向,使用 javascript 或元刷新,如果 iframe 存在,则从 iframe 中退出。

干杯!

(我之前已经淘汰了 iframe,但找不到我的旧代码,谷歌搜索也没用,我认为现在是尝试 Stackoverflow 的最佳时机!)

【问题讨论】:

    标签: javascript html iframe redirect


    【解决方案1】:

    所以我在重定向页面中添加了以下内容。幸运的是,他们没有发布任何内容,因此可以简单地重定向。也可以使用 javascript,因为它需要到达站点中的那个点。

    <script type="text/javascript" language="javascript">
        if (top.frames.length>0)
        setTimeout("top.location = window.location;",100);
    </script>
    

    【讨论】:

    • 而你的延迟只有 1/10 秒。最终用户与即时重定向几乎无法区分。
    • 您可能会丢失语言属性,它已被弃用。
    • 谢谢大家好点。正如你所说,重定向并不是真正需要的。
    【解决方案2】:

    我正在做类似的事情来将旧网站保留在其框架集中:

    <SCRIPT TYPE="text/JavaScript">
        if (window == top){top.location.replace("/foo.html");}
    </SCRIPT>
    

    所以要跳出 iframe,只需将 == 更改为 !=

    我看到您在示例中使用了 setTimeout。等待突破 iframe 是一项要求,还是您希望它立即发生?

    【讨论】:

      【解决方案3】:

      如果您使用的是 javascript:

      parent.document.location = "http://www.google.com"
      

      如果您使用的是 html:

      <a href="http://www.google.com" target=_top >Google</a>
      

      【讨论】:

        猜你喜欢
        • 2012-11-01
        • 2011-01-05
        • 1970-01-01
        • 2012-02-10
        • 1970-01-01
        • 2011-03-16
        • 1970-01-01
        • 1970-01-01
        • 2013-11-06
        相关资源
        最近更新 更多