这可能吗?加载时在新窗口中调用函数
var win = window.open(url);
win.func = function() {
win.someFunc();
// ...
}
然后我想func
被调用,当win
的脚本和DOM满载。 jQuery解决方案也会很好。
这可能吗?加载时在新窗口中调用函数
var win = window.open(url);
win.func = function() {
win.someFunc();
// ...
}
然后我想func
被调用,当win
的脚本和DOM满载。 jQuery解决方案也会很好。
为什么不直接在你的HTML与window.open加载使用。
jQuery(document).ready(function() {
someFunc();
});
UPDATE:如果你要通过参数比你可以像TJHeuvel指出,从调用someFunc首战窗口准备函数调用的函数。
或者你可以有“全局”变量,在你的主窗口,包含您的参数比你someFunc(),你可以像
window.opener.myparameters.param1;
window.opener.myparameters.param2;
假设myparameters具有参数1和pram2领域的访问。
UPDATE:实例
myparameters = new Object();
myparameters.param1 = "1";
myparameters.param2 = "2";
或
myparameters = {param1: "1", param2: "2"};
噢,对不起,我忘记了,父窗口应该将参数传递给孩子。 –
您可以让子窗口调用父函数onload。因此:
window.onload = function()
{
window.opener.ChildLoaded(this);
}
那不是创造直接跨站点脚本问题? – Mat
嗯..例如? –
你会注入JavaScript到你打开的任何窗口。这几乎是跨站脚本的定义。如果目标页面是“你的”,你并不真的需要这个(使用cookies或请求参数,或其他)。 – Mat