我需要在完成加载后立即更改弹出页面的URL(我正在使用window.open函数调用)。 无论如何,我可以找到弹出页面在父窗口中完成加载的时间吗?我无法在弹出的页面中更改任何内容,因为它属于另一个网站。
答案 0 :(得分:9)
window.open
返回对该窗口的window
对象的引用。
如果打开的窗口指向与开窗器相同的域中的URL,则它将具有对该对象的完全访问权限,就像它自己的window
对象一样。
var w = window.open(url);
// If the window opened successfully (e.g: not blocked)
if ( w ) {
w.onload = function() {
// Do stuff
};
}
同样的原产地政策适用于此。如果打开的窗口的URL位于不同的域上,则开启者将无法访问该窗口引用的成员。
答案 1 :(得分:4)
这似乎是不言自明的,但告诉我你是否需要更多解释(或者如果它不起作用,尽管它应该......)
var winObj = window.open( /* lot of params */ );
if( !winObj )
{
/* pop-up blocked! */
}
else
{
winObj.onload = function( ){ /* do stuff here */ };
}