跨页面加载跟踪子窗口

时间:2010-09-23 08:23:29

标签: javascript html web-applications

如果重新加载父页面,是否可以跟踪子窗口?

我现在打开窗户是这样的:

  var childWindow;
  childWindow= window.open('url...');

当我想重新打开相同的子窗口时

 childWindow.focus();

显而易见的问题是,如果父窗口被刷新,那么它将失去childWindow的跟踪并且无法对其进行聚焦。有没有办法让我对子窗口的引用回来?

2 个答案:

答案 0 :(得分:2)

也许您可以使用window.open()中使用的name参数(第二个)在父窗口重新加载时“重新加载”弹出窗口??

答案 1 :(得分:0)

如上所述。我没有找到如何从父窗口对象获取其子窗口的方法。可能没有像window.childWindows数组或方法那样存在。重新加载父页面后,您甚至丢失了使用childWindow = window.open(url,'myChildWindow',opt)

等javascript创建的所有绑定

我找到FF 3.x的唯一可行方法是,如果你知道你正在寻找的子窗口的名称。在这种情况下,再次使用相同的名称打开窗口,如果它仍然打开,您应该获得丢失的链接。在其他情况下,新窗口是打开的。 lostWindow = window.open('','myChildWindow','');

现在你必须测试它是你的旧窗口还是新窗口。例如,您在子窗口中注册的某些属性。

如果(lostWindow.myProperty == 'yes')你可以确定这是你丢失的窗口。

当我浏览互联网时,我发现有些人尝试使用Cookie创建解决方法,或者使用applicationCache创建HTML5。