我正在使用javascript打开一个弹出窗口。
弹出窗口包含的代码在关闭时将修改打开器窗口上的一些值。
就像这样..。
window.opener.jQuery('#txtFee').trigger('change');
当只使用一个窗口时,这个逻辑工作得很好。但有个虫子..。
有两个窗口能够打开这个弹出窗口。如果我从一个窗口打开弹出窗口并保持弹出窗口打开,然后从另一个窗口打开弹出窗口,弹出窗口将被刷新,但是window.opener仍然引用我用来打开弹出窗口的第一个窗口。有办法解决这个问题吗?
发布于 2013-01-16 01:25:27
在打开弹出窗口的两个窗口中,可以将onbeforeunload和/或onunload事件绑定到弹出窗口。
var popWindow = window.open(url, name, options, replace);
popWindow.focus();
popWindow.onbeforeunload = function()
{
$('#txtFee').trigger('change'); //DO WHATEVER YOU WANT HERE
console.log("onbeforeunload fired from ", popWindow.name);
}
popWindow.onunload = function()
{
console.log("onunload fired from ", popWindow.name);
}https://stackoverflow.com/questions/14349827
复制相似问题