从主页面我想打开一个子窗口,从子窗口我想打开另一个窗口。这怎么可能? 我已经尝试了以下代码,但它无法正常工作。
<script type='text/javascript">
function click1(){
var win1=window.open();
win1.document.write("first window");
var windowHTML ='<input type="button" value="click" onclick="click2()" />';
win1.document.write(windowHTML);
}
function click2(){
var win2=window.open();
win2.document.write("seccond window");
}
<input type="button" value="click1" onclick="click1()" />
答案 0 :(得分:1)
两个选项:
opener
更改
var windowHTML ='<input type="button" value="click" onclick="click2()" />';
到
var windowHTML ='<input type="button" value="click" onclick="opener.click2()" />';
// Change is here ---------------------------------------------^
子窗口中的 opener
将是对主窗口的引用,并且由于您正在使用全局函数,因此可以通过该引用调用它们(假设没有SOP个问题)
或者,您可以通过向其中写入script
标记来放置要在子窗口中触发的代码(包含内联JavaScript,有点狡猾或引用外部文件的代码) ,这会更好。)
FWIW,我建议退一步,询问你是否 需要使用多个窗口,而不是坚持一个窗口,并通过div
等做“虚拟”窗口。