1.项目目标:在页面关闭时记录用户页面停留时长
2.解决方案:使用onbeforeunload + navigator.sendBeacon ,这里贴出重点代码
var time=0; //页面进入定义时间
setInterval(function(){time++},1000); //每秒+1
var formData = new FormData(); //navigator.sendBeacon传参数据需要是formData,其他格式可以自行搜一下
formData.append("time_length", time);
window.onbeforeunload = function() { //页面关闭执行
navigator.sendBeacon('接口地址',formData) //使用navigator.sendBeacon进行传参
};
ps:这样就可以实现js记录用户页面停留时长了。并实测请求成功。有不对的欢迎大家讨论指出。