1

我想创建一种方法来跟踪用户访问页面的次数。

问题是,如果自上次访问以来超过 30 分钟,我只想增加 cookie 访问次数。

我怎么能这样做?

现在这是我必须设置和获取 cookie 的内容:

getCookie('xVisitors');
setCookie('xVisitors', 1, 120);


function setCookie(b, c, e) {
    var i = "";
    e > 0 && (i = new Date, i.setTime(i.getTime() + e * 6E4), i = "; expires=" + i.toGMTString());
    e = "";
    document.cookie = b + "=" + c + i + "; path=/;" + e
};

function getCookie(b) {
    for (var c = document.cookie.split(";"), e = 0; e < c.length; e++) {
        for (var i = c[e]; i.charAt(0) == " ";) i = i.substring(1, i.length);
            if (i.indexOf(b) == 0) return i.substring(b.length + 1, i.length);
        }
    return "";
} 
4

1 回答 1

0
var cTime = new Date().getTime();
var numVisits = 1;
var xVisitors = getCookie('xVisitors').split('|');
if ( typeof xVisitors[1]!='undefined' ) {
  numVisits = ( (cTime-parseInt(xVisitors[1])) > (30*60) ) ? (xVisitors[0]+1) : xVisitors[0];
}
setCookie('xVisitors',numVisits+"|"+cTime,120);
于 2013-03-09T13:59:27.957 回答