Chrome 在标签页(或浏览器)关闭时打开卸载前事件
Chrome onbeforeunload event when tab (or browser) closes
当用户离开(关闭)浏览器或页面时,我正在尝试运行一个函数,并且我已经让它在除Chrome以外的所有浏览器中运行。
如果我离开页面,Chrome 会成功运行该功能,但如果我关闭标签页或完全关闭浏览器,则不会运行该功能。
我在最后运行的函数创建一个图像并将一些数据发送到我的服务器(类似于任何分析报告)示例:img.src="url?data=yyy"。此映像是使用 js 动态创建的。
有人可以阐明问题可能是什么吗?我将其缩小到几个原因:
1)当选项卡关闭时,我没有使用正确的事件(即在卸载之前没有)
2)Chrome实际上运行该功能,但由于浏览器/页面关闭,图像未发送。
任何帮助,不胜感激。谢谢。
下面是示例代码:
if(window.addEventListener){
window.addEventListener("beforeunload", page_unload, false);
}
function page_unload(){
var img = new Image();
var img_src = "http://www.myurl.com?data=yyy"
img.src = img_src;
}
我在Chrome上遇到了一个相关的问题,并使用jQuery解决了它:
$(window).unload( function() {
//Call your function
page_unload();
});
出于某种原因,jQuery unload 事件在某些 JavaScript beforeunload 无法正常工作的情况下在 Chrome 中效果更好。
相关文章:
- 我可以't在Chrome中触发卸载事件
- 是否可以在卸载事件之前触发引导模式
- 在 <对象> 标记中加载 SVG 时,将侦听器添加到 SVG 卸载事件
- 角度 JS 指令卸载事件或等效项
- 为什么没有收到从(之前)卸载事件发送的 POST 数据
- 如何在执行 onblur 时“捕获”和卸载事件
- 单击页面卸载事件上的链接
- 以编程方式在卸载事件之前查询触发器
- 浏览器后退事件,不带打开之前卸载和卸载事件
- React:从服务器卸载事件侦听器
- 函数在卸载事件中工作,但在单击事件中不工作
- 从浏览器卸载事件中获取退出值
- BFcache被卸载事件禁用(后退-前进缓存)
- 仅在关闭选项卡/窗口时触发页面卸载事件
- 在Internet Explorer上卸载事件之前的正确使用方式
- 拦截JavaScript卸载事件
- Jquery窗口.刷新页面时控制器动作后调用的卸载事件
- 响应(在)卸载事件取消订阅PubNub通道
- sendBeacon请求被卡住为"(pending)"附加到卸载事件时
- iOS 5 Safari中页面缓存的问题,当导航返回/卸载事件未触发时