AI摘要

本文介绍了一个JavaScript代码示例,用于分析网页的停留时间和访问来源。代码通过设置定时器记录用户在页面上的停留时间,并使用localStorage和cookie技术存储数据。当用户离开页面时,通过`onbeforeunload`事件触发数据的保存。如果用户直接访问页面,则更新最后一条记录的停留时间;如果是通过其他页面跳转而来,则将新数据添加到localStorage中。此外,还提供了一个`getReferrer`函数,用于获取用户的访问来源。
本文介绍了一个JavaScript代码示例,用于分析网页的停留时间和访问来源。代

源代码如下:

var second = 0;
window.setInterval(function () {
    second ++;
}, 1000);
var tjArr = localStorage.getItem("jsArr") ? localStorage.getItem("jsArr") : '[{}]';
$.cookie('tjRefer', getReferrer() ,{expires:1,path:'/'});
window.onbeforeunload = function() {
    if($.cookie('tjRefer') == ''){
        var tjT = eval('(' + localStorage.getItem("jsArr") + ')');
        if(tjT){
            tjT[tjT.length-1].time += second;
            var jsArr= JSON.stringify(tjT);
            localStorage.setItem("jsArr", jsArr);
        }
    } else {
        var tjArr = localStorage.getItem("jsArr") ? localStorage.getItem("jsArr") : '[{}]';
        var dataArr = {
            'url' : location.href,
            'time' : second,
            'refer' : getReferrer(),
            'timeIn' : Date.parse(new Date()),
            'timeOut' : Date.parse(new Date()) + (second * 1000)
        };
        tjArr = eval('(' + tjArr + ')');
        tjArr.push(dataArr);
        tjArr= JSON.stringify(tjArr);
        localStorage.setItem("jsArr", tjArr);
    }
};
function getReferrer() {
    var referrer = '';
    try {
        referrer = window.top.document.referrer;
    } catch(e) {
        if(window.parent) {
            try {
                referrer = window.parent.document.referrer;
            } catch(e2) {
                referrer = '';
            }
        }
    }
    if(referrer === '') {
        referrer = document.referrer;
    }
    return referrer;
}



最后修改:2020 年 03 月 01 日
点赞的人是最酷的