我的父窗口中有以下代码:
function OpenPopup() {
var authWindow = window.open('t.php', 'authWindow', 'options...');
}
function HandlePopupResult(result) {
alert("result of popup is: " + result);
}
以及弹出窗口中的以下代码:
<script type="text/javascript">
function CloseMySelf(sender) {
try {
window.opener.HandlePopupResult(sender.getAttribute("result"));
}
catch (err) {}
window.close();
return false;
}
</script>
<a href="#" result="allow" onclick="CloseMySelf(this);">Allow</a>
<a href="#" result="disallow" onclick="CloseMySelf(this);">Don't Allow</a>
该函数的第一部分工作正常,但弹出窗口没有关闭。我读过,window.close 仅在弹出窗口已由 javascript 打开时才有效,但我认为这里是这种情况?
window.close 工作正常,如果我删除 opener-function。是因为脚本不知道“窗口”指的是第二个实例中的孩子吗?