[英]Reloading grand parent window while parent is already closed
我有一个父窗口(#1),它将打开一个弹出子窗口(#2),这又会打开一个弹出子窗口(#3)。 当(#3)打开时,(#2)通过self.close()关闭。
我的问题是,当我关闭(#3)时如何刷新(#1)? 我尝试了window.opener.opener.reload(),但是由于(#2)已经关闭,因此无法正常工作。
我认为您无法做到。 关闭#2窗口后,您将失去对它的引用,因此无法通过其打开器(#1)刷新它。
但是 ,通过在Chrome控制台中进行的快速测试来判断,将窗口#1的引用向下传递到窗口#3的文档中,然后在以后重新使用它。 它可能看起来像这样:
// in window #1 - opening window #2
var win2 = window.open('samedomainurl...');
// -----------------
// in window #2 (just opened)
// -----------------
// open window 3
var win3 = window.open('samedomainurl...');
// pass reference to window.opener (which is #1) to newly opened win3 document
win3.document.grandparentWindow = window.opener;
// -----------------
// in window #3 - after closing #2 you still can access #1 using document.grandparentWindow property
// -----------------
// reload original window
document.grandparentWindow.location.reload();
window.parent.opener.location.reload();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.