javascript - Chrome 和之前卸载/卸载
问题描述
我有一个看似简单的要求,但我已经卡了好几天了。有人可以帮帮我吗?
- 如果用户试图关闭弹出窗口,我需要确认提示
- 如果用户单击确定关闭,我需要调用 ajax 调用
我最初的设计是添加一个 onbeforeunload 事件处理程序,让它返回一个触发提示的字符串。完美运行。
问题是下一部分。添加了一个卸载侦听器、一个页面隐藏侦听器和一个可见性更改侦听器 - 在所有三种情况下,如果用户关闭窗口,Chrome 不会触发事件,只有当我刷新窗口时。Firefox 完美运行。我正在使用应该在这些情况下工作的 sendbeacon 调用,如果我在窗口关闭之前添加一个断点来暂停,则会发送信标,因此 Chrome 似乎关闭文档的速度太快并且从不打扰发送最后一个信标,这使整个练习毫无意义。
有没有人遇到过类似的问题,如果有,有什么办法可以解决吗?
解决方案
推荐阅读
- javascript - Javascript Firebase 身份验证和 Firestore:保存用户数据之前的页面重定向
- django-templates - django-tables2:在表头中避免大写字母的更好方法
- c++ - 如何在不使用任何布尔值的情况下重复循环?
- html - 如何阻止我的 css 在 django 中重叠?
- java - 服务器设置 Spring Boot & Docker & Traefik
- rust - 为什么我不能移出 Vec 的索引
>? - linux - 如何在拆分 fastq 文件时附加变量名?
- json.net - System.Text.Json 中的 DefaultContractResolver 等效项
- c - 无法使用 XTestFakeKeyEvent 将按键发送到 Xvfb 显示器
- python-3.x - Python getter/setter 内部函数