如何解决Google Chrome浏览器弹出窗口未触发“ beforeunload”事件
当用户关闭第二个窗口时,我需要运行一些代码:
var win = window.open("chat-box",null,"height=600,width=1300,status=yes,toolbar=no,menubar=no,location=no");
if(win != null)
{
win.addEventListener("beforeunload",function()
{
console.log("It closed");
});
}
它可以在Firefox中运行,但不能在Google Chrome中运行。
关于为什么或如何解决它的任何想法?
解决方法
我过去使用的一种方法是使用间隔计时器来检查win.closed
if(win){
let timer = setInterval(()=>{
if(win.closed){
console.log('It closed')
clearInterval(timer)
}
},1000);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。