打开一个新窗口,并调用javascript函数

use*_*416 9 javascript

我是javascript的新手.我想知道如何从一个javascript方法打开一个新窗口,然后调用它的javascript方法.

窗口的url位于另一个域中(可能导致安全问题!?),我无法控制它.

例如,代码应该表现如下:

handler<-openAWindow("www.someurl.com");//open a window and get a handler for it
handler->someMethod1(param1, param2);//call some javascript method 
handler->someMethod2(param3, param4);//call some other javascript method<br>
Run Code Online (Sandbox Code Playgroud)

谢谢,
伊兰.

Cri*_*hez 17

不幸的是,您无法控制或访问跨域窗口.这样做是为了安全预防措施.你可以控制其他网址吗?

但是,如果窗口位于同一个域中,则您可以访问该窗口及其DOM.

var win = window.open("/page", "title");
win.someFunction();
var el = win.document.getElementById("id123");
//etc.
Run Code Online (Sandbox Code Playgroud)

  • 这对我来说不起作用,因为win.someFunction()在创建新窗口后还没有准备好/定义 - 所以我有新窗口调用window.opener.child_ready(),而后者又会运行win.someFunction ().如果有更好的方法,很高兴听到它,否则这可能会帮助别人. (3认同)