现有如下需求:在IE浏览器窗口A上 打开一浏览器窗口B,B要调用A的方法或函数控制A。
方法1:用window.opener
此法有个缺点,当A嵌入到某iFrame之中的时候,B调用window.opener得到的是这个iframe,且似乎用得到的这个iframe还得不到 窗体A(未深究)。
方法2:window.showModelessDialog + window.dialogArguments
举例如下:
在窗体A:
window.showModelessDialog( ' windowB.aspx', window , 'dialogheight=500px;dialogwidth=600px;toolbar=no;addressbar=no;menubar=no;resizable=no;scrollbars=no;status=no;location=no;center=yes');"
在窗体B:
<base target="_self">
</base>
(以上两句必须)
var parWindow = window.dialogArguments;
var imgBtn = parWindow.document.getElementById("ibtnNote");