gpt4 book ai didi

javascript - 如何关闭html中的iframe弹出窗口

转载 作者:行者123 更新时间:2023-11-28 02:42:58 32 4
gpt4 key购买 nike

这是我的父页面,我从这里打开一个弹出窗口

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>Popup example</title>
<script type="text/javascript">
function OpenPop() {
window.scrollTo(0, 0);
var width = document.documentElement.clientWidth + document.documentElement.scrollLeft;
var height = document.documentElement.clientHeight + document.documentElement.scrollTop;
var layer = document.createElement("div");
layer.style.zIndex = 2;
layer.id = "layer";
layer.style.position = "absolute";
layer.style.top = "0px";
layer.style.left = "0px";
layer.style.height = document.documentElement.scrollHeight + "px";
layer.style.width = width + "px";
layer.style.backgroundColor = "black";
layer.style.opacity = "0.75";
layer.style.filter += ("progid:DXImageTransform.Microsoft.Alpha(opacity=75)");
document.body.style.position = "static";
document.body.appendChild(layer);
var size = { "height": 220, "width": 400 };
var iframe = document.createElement("iframe");
var popUrl = 'popup.htm';
iframe.name = "Logic Form";
iframe.id = "popup";
iframe.src = popUrl;
iframe.style.height = size.height + "px";
iframe.style.width = size.width + "px";
iframe.style.position = "fixed";
iframe.style.zIndex = 3;
iframe.style.backgroundColor = "white";
iframe.frameborder = "0";
iframe.style.top = ((height + document.documentElement.scrollTop) / 2) - (size.height / 2) + "px";
iframe.style.left = (width / 2) - (size.width / 2) + "px";
document.body.appendChild(iframe);
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<a onclick="OpenPop();" href="#">OpenPopup</a>
</div>
</form>
</body>

这是我的 popup.html 页面,

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
function closeIframe() {
var iframe = opener.document.getElementById("popup");
var layer = opener.document.getElementById("layer");
iframe.parentNode.removeChild(iframe);
layer.parentNode.removeChild(layer);
}
</script>
</head>
<body>
<h3>This is Popup</h3>
<a onclick="closeIframe();" href="#">Close</a>
</body>
</html>

问题:在 popup.html 上,有关闭按钮,谁正在调用函数来删除 iframe,但我无法关闭弹出窗口,有人帮忙吗?

有人有更好的解决方案或示例来执行这样的弹出窗口吗?

非常感谢任何帮助

最佳答案

您的CloseIframe方法应该是:

function closeIframe() {
window.parent.ClosePop();
}

在主页的 OpenPop 方法下,添加关闭操作,例如:

function ClosePop() {
var layer = document.getElementById("layer");
var iframe = document.getElementById("popup");
document.body.removeChild(layer); // remove layer
document.body.removeChild(iframe); // remove div
}

关于javascript - 如何关闭html中的iframe弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12382769/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com