是否可以使用JavaScript打开一个新窗口并等待jQuery直到新页面加载完毕?
我尝试了以下操作,但它不起作用:
var win = window.open(url,'',windowSpec);
$(win.window).load(
function () {
alert('Finished loading');
}
);
答案 0 :(得分:5)
由于打开的URL位于同一台服务器上,这意味着两个窗口可以通信。
在窗口中打开的页面上添加
$(window).load(function() {
var opener = window.opener || window.dialogArguments;
if (opener) {
opener.yourmethod();
}
});
并在启动window.open
命令的页面上使用
function yourmethod(){
alert('Finished loading');
}
演示 http://jsfiddle.net/nmXdc/1
(从点击打开的窗口位于http://jsfiddle.net/FPcMk/1/ )