JavaScript
发布时间:2022-04-16 发布网站:大佬教程 code.js-code.com
大佬教程收集整理的这篇文章主要介绍了javascript实现用户点击数量统计,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在微信上做一次推广活动,页面共计三个按钮,需要分别统计点击次数,pc上的相关统计用的是“百度统计”,因为H5活动页的时效性等原因,并没有使用百度统计,而是自己实现一个简单的
统计小方案
:
前端点击时请求一个空白小gif图,带有参数,后端同事根据nginx请求日志做统计,通过在cookie中存入一个不会重叠的时间戳作为key值来区分是否同一用户(uv)。
请求的图片存在七牛中,是固定不变的,主要变化是后面两个参数:用户标识uid和按钮标识,其中生成不重复(把重复率降到最低)的用户标识很有意思。
时间戳用new Date().getTime()得出一个13位的“随机数”,精确到毫秒,但万一同一毫秒有两个以上用户点击呢?于是再严谨一些,用for循环在随机一个5位字符串拼接,这样的重复率绝对够用:
);
var random
number = '';
for(var i = 0 ; i < 5 ; i ++)
{
random
number +=
new String (Math.floor(Math.random() * 10)
);
}
uid = uid + random
number;
下面是具体逻辑代码,当网页中已有请求图片时,更改url的参数也一样能从新发起一个get请求,避免每次点击都append一张图片。这种实现方法感觉比点击发送ajax更加方便。
{
var pic = "
http://wx.daigj.com/notification/statistics/p.gif";
var uid = uti
l.ReadCookie("uid"
);
var imgLength = $("#statistics-img").length;
if(uid)
{
if(imgLength == 0)
{
$('body').append('
);
}else
{
$("#statistics-img").attr("src",pic+"?uid="+uid+"&position="+position
);
}
}else
{
uid = new Date().getTime(
);
var random
number = '';
for(var i = 0 ; i < 5 ; i ++)
{
random
number +=
new String (Math.floor(Math.random() * 10)
);
}
uid = uid + random
number;
uti
l.createCookie("uid",uid
);
$('body').append('
);
}
}
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持菜鸟教程!
大佬总结
以上是大佬教程为你收集整理的javascript实现用户点击数量统计全部内容,希望文章能够帮你解决javascript实现用户点击数量统计所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。