JS 无法检测到子窗口关闭
JS Failed to detect childWindow closed
我想在子窗口关闭时运行一个函数,但它无法检查window.closed
。
这是我的代码:
<button onclick='openChild(); ></button>
<script language="JavaScript" type="text/javascript">
function openChild(){
var child_window = window.open('http://www.website.com','win1','toolbar=0,status=1,location=1,scrollbars=1,resizable=1,width=950,height=600');
if(<?php echo $active?> ==0 ){
setTimeout(function(child_window ){
child_window.close();
}, 1000);
}
child_window.onunload =checkChild;
var check_token = setInterval(checkChild, 500);
}
function checkChild() {
if (child_window && child_window.closed) {
alert("Closed!");
clearInterval(check_token);
$.get("check.php", function(data) {});
location.reload();
}
}
在 checkChild()
函数中,变量childWindow
不存在,但由于您使用checkChild()
作为事件处理程序,因此您可以将childWindow
替换为this
关键字
function openChild(){
var child_window = window.open('http://www.website.com','win1','toolbar=0,status=1,location=1,scrollbars=1,resizable=1,width=950,height=600');
if(<?php echo $active?> ==0 ){
child_window.close();
}
child_window.onunload = function() {
// this functions fires when closed
alert('closed');
$.get("check.php", function(data) {});
location.reload();
};
}
相关文章:
- 如何检测哪个窗口是焦点
- 如何检测用户是否在同一会话中打开了多个窗口或选项卡
- 检测window.opener窗口刷新事件
- 在重新加载之后检测窗口的存在
- 有没有一种方法可以检测何时触发了溢出-y:auto,并因此创建一个弹出窗口
- 在聊天窗口中检测链接单击事件
- JS 无法检测到子窗口关闭
- 关于在extjs窗口组件中检测拖动
- 如何使用jQuery UI检测我拖到窗口外的内容
- 如何检测函数's窗口没有'我再也不存在了
- php检测浏览器窗口宽度,然后包括适当的php文件
- 从子项(iframe)检测窗口关闭命令
- 检测打开新选项卡/窗口的原始选项卡(如果有)
- 检测内容'It’’’’我在窗口选项卡上
- 如何检测浏览器(不是窗口)关闭事件
- 如何检测浏览器窗口是否已从另一个浏览器窗口打开
- Javascript - 如何检测我的弹出窗口何时访问我的网站
- 检测 Chrome 浏览器窗口的宽度和高度,以防止元素溢出
- 如何在IE中检测弹出窗口阻止程序
- JQuery / JS:检测用户的滚动尝试,没有任何窗口溢出滚动到