在加载时在新窗口中调用功能

时间:2011-09-07 09:09:08

标签: javascript

这可能吗?

var win = window.open(url);

win.func = function() {
    win.someFunc();
    // ...
} 

然后,当func的脚本和 DOM 完全加载时,我希望调用win。 jQuery解决方案也会很好。

2 个答案:

答案 0 :(得分:1)

为什么不在你用windows.open加载的html中使用它。

jQuery(document).ready(function() {
  someFunc();
});

更新:如果你必须传递参数,就像TJHeuvel所说,来自调用someFunc的开启窗口的就绪函数调用函数。

或者你可以在主窗口中拥有包含参数的“全局”变量,而不是在someFunc()中你可以像

那样访问它
window.opener.myparameters.param1;
window.opener.myparameters.param2;

假设myparameters有param1和pram2字段。

更新:示例

myparameters = new Object();
myparameters.param1 = "1";
myparameters.param2 = "2";

myparameters = {param1: "1", param2: "2"};

答案 1 :(得分:0)

您可以让子窗口调用父函数onload。就这样:

window.onload = function()
{
 window.opener.ChildLoaded(this);
}