0

假设在窗口 AI 上做

var newWindow = window.open('url', 'name', 'width=100');

并打开一个新窗口(称为窗口 B)

然后在窗口 BI 上获取对开启器窗口(窗口 A)的引用

var opener = $(window.opener)

当窗口 A 刷新和/或完成刷新时,有没有办法使用上面的 opener 变量从窗口 B 检测?

4

2 回答 2

0

我会在原始窗口中设置一个变量,可能是时间戳或类似的东西:

$(document).ready(function() {
   var datime = Date();
});

然后在窗口 B 中,你可以做同样的事情,并根据两个窗口的创建日期,你会知道窗口 A 最近是否刷新过。您还可以将窗口 A 的创建日期作为变量存储在窗口 B 中,以便您随时知道窗口 A 已刷新。

于 2012-09-04T22:09:12.133 回答
0

您可以检测到开启器何时通过以下方式卸载:

$(opener).unload()

在 newWindow 内,您应该能够在超时后重新分配开启器内的变量。

不要忘记在重新加载后也重新分配卸载功能。

我做了一个演示: http: //fiddle.jshell.net/doktormolle/2Pcn8/show/

来源:
开瓶器: http: //jsfiddle.net/doktormolle/2Pcn8/
新窗口:http : //jsfiddle.net/doktormolle/jB9D6/

在 IE(6-9)、FF、Chrome、Safari 中为我工作。
没有在 Opera 中工作

于 2012-09-04T23:05:09.647 回答