我有一个表单在提交时打开一个新窗口:
<form id="form-id" target="_blank">
解决方法
我并不是100%确定这适用于所有浏览器,但是当< a>上的目标属性时,Firefox似乎设置了window.opener.或< form>导致打开一个新窗口.因此,您可以转向另一个方向并从新窗口中找到原始窗口(假设您在那里控制代码;如果没有,那么我无法想象您无论如何都可以对窗口引用做很多事情).
当然,新窗口中的代码可以做的一件事是在旧窗口中调用一个函数,传入自己的窗口引用.
因此,具体来说,如果你有:
<form action=whatever target=_blank>
在原始页面上,然后在新打开的窗口中结束的页面可以执行此操作:
<head> <script> if (window.opener) { window.opener.announceWindow( window ); } </script>
假设announceWindow()是原始页面上的一个函数,可能是这样的:
function announceWindow( win ) { // do stuff with "win",a newly-opened window }