我有一个主窗口mainWin,在主窗口会弹出新的窗口popupWin,在新的弹出窗口popupWin还会弹出新的窗口,可能有多层。
现在要在弹出的窗口中去取mainWin中变量,我考虑不能使用opener来取,因为如果弹出多层窗口,中间层的窗口关闭,opener形成的链就断了,这个办法行不通。
我的方法是在弹出窗口中用window.open去取mainWin的实例
[code="javascript"]
var main = window.open('','mainWin','');
[/code]
这样通过main变量就可以取到mainWin的实例,然后操作主窗口中的变量。只要main窗口处于打开状态,window.open就会返回mainWin的实例而不打开新的窗口。
问题是:
如果main窗口先关闭,而其他的弹出窗口尚未关闭,然后在弹出窗口中找mainWin的实例没有找到,window.open方法会打开一个空白的新窗口,这样会影响用户体验。
请问各位高手,如何能使window.open在主窗口关闭的状态下不打开新的窗口?
或者有更简单的思路在弹出窗口中取到主窗口的实例?