【问题标题】:How to close an iframe?如何关闭 iframe?
【发布时间】:2010-12-10 05:22:18
【问题描述】:

打开 iframe 后,有时我需要关闭它。到目前为止,我只是从其父节点中删除 iframe,从而将其从 DOM 中删除。但是,我发现这不会立即结束 iframe 的生命,它的 javascript 代码仍然可以回调到不再需要这些回调的父窗口。

我怎样才能杀死一个 iframe 死机?我没有看到它的关闭或销毁方法。

【问题讨论】:

    标签: javascript dom iframe


    【解决方案1】:

    在您的网站上创建一个空白.htm 文件。将 IFrame SRC 设置为 blank.htm,然后删除 IFRAME。

    【讨论】:

    • 我想我可以将 iframe 发送到 blank.htm,即使它在我的网站上不存在,因为它是隐藏的 iframe,404 无关紧要。谢谢。
    • 404 会更昂贵,通常 404 具有重要的响应正文,甚至对图像等的引用。它们也不可缓存。使用空的 Blank.htm 可能会导致根本不往返服务器或比 404 便宜。
    • 好点。 “关于:空白”呢?我在 IE 和 Chrome 上尝试过,它们都可以处理它,而无需调用服务器。
    • 是的 about:blank 可能在大多数情况下都可以使用,但如果您想通过 HTTPS 为您的网站提供服务,它可能会让您感到困惑,您可能会收到“某些内容不安全”的警告消息框。
    • 别去找blank.htm!那还是太浪费了。将src 属性设置为data:text/html, 。不调用其他任何东西,不需要额外的文件,只插入一个空文档。
    【解决方案2】:

    如果您使用 jQuery,那么您可以使用 $.remove('iframe object id') 方法。这将从页面中删除 DOM 对象,并在此 iframe 中删除。

    【讨论】:

    • 根据 jQuery 文档,remove 方法应该是这样的:$('#iframeObjectId').remove()api.jquery.com/remove
    • 谢谢!乔恩。我的评论是在 2012 年和那一年与 jQuery 版本相关的语法。您适合当前的 jQuery 版本。
    【解决方案3】:

    试试这个..

    <a href="Home.html" target="_parent">
    

    【讨论】:

    • 谢谢,但我需要执行此操作的脚本——而不是链接。这也会清除父页面,这是我不想要的。
    猜你喜欢
    • 1970-01-01
    • 2011-10-08
    • 1970-01-01
    • 2020-08-02
    • 1970-01-01
    • 1970-01-01
    • 2021-07-06
    • 1970-01-01
    • 2021-08-26
    相关资源
    最近更新 更多