因此,对于此项目,我正面临一些问题。Internet Explorer弹出窗口和关闭窗口的问题
概述:我向客户发送指向网页的链接。在该网页上,我需要以方便的方式向我的用户显示信息(名字,姓氏,dob等),这些信息将被复制并粘贴到第三方页面中。我原本想使用iFrame,并在一页上显示信息和第三方网站,但第三方已阻止iFrame。我的下一个解决方案是创建2个弹出窗口,用于启动网页的加载,一个是屏幕顶部的细水平信息以及所需的信息,另一个是用第三方网站填充页面的其余部分。当其中一个子窗口关闭时,我需要的下一个功能太容易使3页(登录页面,信息窗口和第三方站点)关闭。
我已经得到了正是我想在Chrome中工作的,但问题是我需要在Internet Explorer中工作。在Chrome中,网页会自动启动两个弹出窗口,当其中一个关闭时,所有三个窗口都会关闭。在IE中,两个网页弹出,但随后几秒钟后自动退出并关闭。
这里是我的代码:
<!DOCTYPE html>
<html>
<meta charset="ISO-8859-1">
<button onclick="closeWin()"> Close</button>
<body onload="infoPopup()">
</body>
<script>
var myWindow;
var myWindowB;
function infoPopup(){
var windowDimensions = ("scrollbars=1,width="+(screen.width-10)+",height=150");
myWindow = window.open("", "MsgWindow", windowDimensions);
myWindow.moveTo(0,0);
myWindow.location="https://google.com"
var myWindowBDimensions = ("scrollbars=1,width="+(screen.width-10)+",height="+(screen.height-250));
myWindowB = window.open("", "myWindowB", myWindowBDimensions);
myWindowB.moveBy(0,150);
myWindowB.location="https://wikipedia.org";
var timer = setInterval(checkChild, 500);
function checkChild() {
if (myWindow.closed||myWindowB.closed) {
closeWin();
clearInterval(timer);
}
}
}
function closeWin(){
myWindow.close();
myWindowB.close();
window.close();
}
</script>
</html>
我假设的问题在于
if (myWindow.closed||myWindowB.closed)
也许IE无法正常读取这些条件呢?
我知道弹出式窗口通常是不被接受的,控制网页应该留给用户,但是对于这个项目来说,这只是一个过程的一小部分,需要快速完成和关闭。任何帮助或其他选择的建议,非常感谢!