您的位置:首页技术文章
文章详情页

javascript - 如何在网页关闭前,通过ajax把访问行为返回后台??

【字号: 日期:2023-02-25 13:08:58浏览:46作者:猪猪

问题描述

我想在网页关闭时,把采集到的访问信息ajax到服务器,现有代码大概如下,实测不可行。

window.onbeforeunload=function(e){visit_end=new Date(); visit_long=((visit_end.getTime()-visit_start.getTime())/1000).toFixed(1); //此处省略以上采集的访问信息 ajax_visit_info(); //在关闭网页时,调用ajax函数发送到后台。 //return confirm(’你真的要关闭吗?’); //不想加上这个,看起来不友好。 }

实测,后台压根没有接收到……!蛋!疼!

请问有什么方法??在不影响友好的情况下……

问题解答

回答1:

onbeforeunload 是不靠谱的,有些浏览器不支持,而且不支持回调里的异步任务。

Service workers需要现代浏览器支持

所以还是基于其他事件触发吧

回答2:

只能 Service Worker 了

回答3:

这个应该就是数据上报吧,你可以看一下百度上报的实现

标签: JavaScript