如何实现关闭游戏弹窗后重定向父页面至新URL?
实现弹窗关闭后父页面重定向的方案
你需要修改openGameWindow函数,通过保存弹窗引用并定时检查其关闭状态,触发父页面的重定向操作。具体修改如下:
修改后的完整脚本代码
function openGameWindow() { // 打开弹窗并保存窗口引用 const gameWindow = window.open('https://cdn.htmlgames.com/BubbleBilliards/', 'popUpWindow','height=400,width=400,left=100,top=100,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no, status=yes'); // 设置定时器,定期检查弹窗是否关闭 const checkTimer = setInterval(() => { // 确认弹窗已关闭 if (gameWindow.closed) { clearInterval(checkTimer); // 停止定时器 // 重定向父页面到目标URL,替换成你实际需要的地址 window.location.href = 'https://example.com/target-page'; } }, 500); // 每500毫秒检查一次,可根据需求调整间隔 }
关键说明
- 保存弹窗引用:
window.open会返回新窗口的对象引用,通过这个引用可以判断窗口是否关闭。 - 定时检查状态:使用
setInterval定期检测弹窗的closed属性,当该属性为true时,说明弹窗已关闭。 - 清理定时器:弹窗关闭后要清除定时器,避免不必要的资源消耗。
- 跨域兼容性:即使弹窗内的页面与父页面不同域,也可以正常访问
closed属性,不会触发同源策略限制。
内容的提问来源于stack exchange,提问作者Ali Sadikin
相关产品推荐
相关产品推荐

