JQuery - 在浏览器关闭事件时执行任务
JQuery - perform task on browser close event
非常简单的问题。我需要在用户关闭浏览器时执行任务。我知道以下功能:
$(window).bind("beforeunload", function() { 返回假;})$(window).unload(function() { 返回假;})
但是这两个 - 都会发出警报,询问用户 - "留在此页面上" - "离开此页面"(至少在Chrome上)。
我不希望这种情况发生。我只想在他关闭它时执行一个任务,例如更新数据库上关于他离开的时间。
任何想法谢谢
这不可能跨浏览器正确完成,因为 Opera 实际上并不支持它:''如这里所述: 跨浏览器 Onunload 和 Onbeforeunload ?(特别是歌剧11)和许多其他有据可查的地方。
此外,正如其他人提到的那样,有不同程度的实现,例如Firefox,您可以将自己的消息添加到在卸载前显示的警报框中,但在Chrome中您不能,它只会显示一些没有多大意义的通用消息。
您可以定期保存用户状态(使用 ajax),也可以只将最后一个请求记录到服务器(在后端)。
相关文章:
- 如何在onclick事件执行代码时在ImageButton上设置加载gif
- 如果类有多个事件处理程序方法,如何防止多个事件执行
- JQuery - 在浏览器关闭事件时执行任务
- 单击事件执行单击和悬停事件处理程序,即使单击事件处理程序取消绑定所有处理程序也是如此
- 对多个滚动事件执行一次操作并防止滚动
- 选择多个项目以执行任务
- Javascript事件循环任务队列溢出是否可能
- JavaScript - 在 setTimeout 之后根据值执行任务
- jQuery全局/本地事件执行顺序
- 作为预生成事件执行PowerShell脚本失败
- 允许对目标事件执行默认操作,并阻止对父级执行默认操作
- 使用点击jquery事件执行css3转换
- 阻止.mouseout事件执行
- 无法通过键盘事件执行功能
- 循环中的Javascript onclick事件执行了1次以上
- 无法使用grunt ssh在服务器上执行任务
- 如何将多个事件处理程序添加到同一个html元素中,并根据事件执行不同的方法
- 否则,如果命令未执行任务
- 在Angular 2中处理click和clickOutside事件执行优先级的最佳方式
- 在mustache模板中对点击事件执行函数