首页 > 代码库 > beforeunload在离开页面前执行业务逻辑
beforeunload在离开页面前执行业务逻辑
window有个beforeunload事件,是在离开页面前触发的;大家肯定会很快联想到unload这个事件,二者有的区别还是蛮大的,字面上就很好理解,beforeunload在时间线上在unload之前执行,分解点就是页面卸载时间;
经常会有一些在用户离开页面前执行一些业务的应用场景,这都要用到onbeforeunload事件;比如记录用户停留时长的业务,在GA等页面访问统计的应用中都包含这个:
1 ;(function(){ 2 var startTime = Math.ceil(new Date().getTime()/1000), //单位秒 3 getDuration = function(){ 4 var time = ‘‘, 5 hours = 0, 6 minutes = 0, 7 seconds = 0, 8 endTime = Math.ceil(new Date().getTime()/1000), 9 duration = endTime - startTime;10 11 hours = Math.floor(duration/3600); //停留小时数12 minutes = Math.floor(duration%3600/60); //停留分钟数13 seconds = Math.floor(duration%3600%60); //停留秒数14 15 time = (hours < 10 ? ‘0‘ + hours : hours) + ‘:‘ + (minutes < 10 ? ‘0‘ + minutes : minutes) + ‘:‘ + (seconds < 10 ? ‘0‘ + seconds : seconds);16 17 return time;18 }; 19 20 21 window.onbeforeunload = function(e){22 var duration = getDuration();23 24 //request(duration);25 };26 })();
beforeunload在离开页面前执行业务逻辑
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。