首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从javascript中正确关闭iframe,并且不隐藏iframe

从javascript中正确关闭iframe,并且不隐藏iframe
EN

Stack Overflow用户
提问于 2012-11-03 20:49:17
回答 1查看 10.6K关注 0票数 0

我想关闭一个iframe...我使用了代码,比如当我单击close btn时,使iframe可见为false,或者显示为none……但这影响了我的项目中的其他代码,因为iframe没有关闭,我只是在隐藏……此外,代码可以在Mozilla和Chrome中使用,这就完善了隐藏iframe的概念。但在IE中,这根本不起作用。所以我试了几种其他的方法,比如...在关闭btn时调用此函数的ifame页面中,单击:

代码语言:javascript
运行
复制
    function closeiframecommt() {
        parent.closeiframefriends();
    }

在包含iframe的页面中,我编写了如下代码:

代码语言:javascript
运行
复制
function closeiframefriends() 
{
    var friends = document.getElementById("IFriends");
    friends.style.display = "none";
}

所以..。这在Mozilla和Chrome中运行良好,但在IE中...第一次关闭iframe时,它会关闭,但下次我尝试打开iframe时,它会给出错误,并且iframe不会只打开...但是这个显示none或visible false正在影响项目中的其他代码,所以我尝试删除代码以再次关闭iframe IE问题...所以你能帮助我用适当的代码来关闭iframe...当我尝试查找代码时,当我们单击Esc或iframe之外的任何地方时,它(Iframe)都会正常关闭,所以我想知道..当我们按Esc键或在iframe外单击时会发生什么情况: iframe完全关闭而不会影响其他代码。

提前感谢您!!

EN

回答 1

Stack Overflow用户

发布于 2012-11-03 21:01:11

你不会“关闭”一个iframe --你会隐藏它或者移除它。因为隐藏它对你来说不是一个选择-你应该删除它。这在chrome和IE中都有效。

代码语言:javascript
运行
复制
<!DOCTYPE html>
<head>
    <title>test</title>
    <style type="text/css">
    .top {
        height:100px;
        width:200px;
        background-color:green;
    }
    </style>
    <script type="text/javascript">
    function removeIFrame() {
        var frame = document.getElementById("target");
        frame.parentNode.removeChild(frame);
    }
    </script>
</head>
<body>
    <div class="top" onclick="removeIFrame();"></div>
    <iframe id="target" src="http://www.disney.com" width="100" height="100"></iframe>
    <div class="top"></div>
</body>

顶部绿色div的onclick处理从DOM中删除iframe。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13209343

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档