在微信上做一次推广活动,页面共计三个按钮,需要分别统计点击次数,pc上的相关统计用的是“百度统计”,因为H5活动页的时效性等原因,并没有使用百度统计,而是自己实现一个简单的统计小方案:前端点击时请求一个空白小gif图,带有参数,后端同事根据nginx请求日志做统计,通过在cookie中存入一个不会重叠的时间戳作为key值来区分是否同一用户(uv)。

请求的图片存在七牛中,是固定不变的,主要变化是后面两个参数:用户标识uid和按钮标识,其中生成不重复(把重复率降到最低)的用户标识很有意思。
时间戳用new Date().getTime()得出一个13位的“随机数”,精确到毫秒,但万一同一毫秒有两个以上用户点击呢?于是再严谨一些,用for循环在随机一个5位字符串拼接,这样的重复率绝对够用:
uid = new Date().getTime();
var randomNumber = '';
for(var i = 0 ; i < 5 ; i ++){
randomNumber += new String (Math.floor(Math.random() * 10));
}
uid = uid + randomNumber;
下面是具体逻辑代码,当网页中已有请求图片时,更改url的参数也一样能从新发起一个get请求,避免每次点击都append一张图片。这种实现方法感觉比点击发送ajax更加方便。
statistics: function(position){
var pic = "http://wx.daigj.com/notification/statistics/p.gif";
var uid = util.readCookie("uid");
var imgLength = $("#statistics-img").length;
if(uid){
if(imgLength == 0){
$('body').append('<img id="statistics-img" src="' + pic + '?uid='+ uid + '&position='+ position +'"/>');
}else{
$("#statistics-img").attr("src",pic+"?uid="+uid+"&position="+position);
}
}else{
uid = new Date().getTime();
var randomNumber = '';
for(var i = 0 ; i < 5 ; i ++){
randomNumber += new String (Math.floor(Math.random() * 10));
}
uid = uid + randomNumber;
util.createCookie("uid",uid);
$('body').append('<img id="statistics-img" src="' + pic + '?uid='+ uid + '&position='+ position +'"/>');
}
}
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# js
# 统计
# js实现统计字符串中特定字符出现个数的方法
# JavaScript统计字符串中每个字符出现次数完整实例
# javascript实现的网站访问量统计代码
# javascript实现动态统计图开发实例
# JavaScript统计网站访问次数的实现代码
# JSP实现网页访问统计
# JavaScript实现网站访问次数统计代码
# JS基于cookie实现来宾统计记录访客信息的方法
# Javascript实现字数统计
# JS实现统计复选框选中个数并提示确定与取消的方法
# 的是
# 随机数
# 已有
# 时请
# 很有意思
# 上做
# 推广活动
# 后端
# 有两个
# randomNumber
# getTime
# lt
# brush
# var
# pre
# class
# strong
# gif
# nginx
相关文章:
微信小程序 五星评分(包括半颗星评分)实例代码
建站中国官网:模板定制+SEO优化+建站流程一站式指南
建站之星手机一键生成:多端自适应+小程序开发快速建站指南
网站制作壁纸教程视频,电脑壁纸网站?
小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?
如何在Windows服务器上快速搭建网站?
网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?
如何正确选择百度移动适配建站域名?
如何通过虚拟主机快速完成网站搭建?
Swift中switch语句区间和元组模式匹配
如何通过山东自助建站平台快速注册域名?
高端企业智能建站程序:SEO优化与响应式模板定制开发
如何通过可视化优化提升建站效果?
网站制作大概要多少钱一个,做一个平台网站大概多少钱?
北京的网站制作公司有哪些,哪个视频网站最好?
如何用PHP工具快速搭建高效网站?
建站之星后台搭建步骤解析:模板选择与产品管理实操指南
如何在阿里云香港服务器快速搭建网站?
浅析上传头像示例及其注意事项
正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?
如何快速搭建高效服务器建站系统?
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
南宁网站建设制作定制,南宁网站建设可以定制吗?
香港服务器网站推广:SEO优化与外贸独立站搭建策略
建站之星安装失败:服务器环境不兼容?
北京营销型网站制作公司,可以用python做一个营销推广网站吗?
宝塔新建站点为何无法访问?如何排查?
如何配置WinSCP新建站点的密钥验证步骤?
如何通过VPS建站实现广告与增值服务盈利?
杭州银行网站设计制作流程,杭州银行怎么开通认证方式?
如何用美橙互联一键搭建多站合一网站?
如何使用Golang table-driven基准测试_多组数据测量函数效率
如何高效完成独享虚拟主机建站?
如何确保FTP站点访问权限与数据传输安全?
如何在香港服务器上快速搭建免备案网站?
网页设计与网站制作内容,怎样注册网站?
网站制作企业,网站的banner和导航栏是指什么?
网站制作软件有哪些,制图软件有哪些?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
如何高效配置IIS服务器搭建网站?
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
简单实现Android验证码
如何在阿里云服务器自主搭建网站?
如何通过服务器快速搭建网站?完整步骤解析
招商网站制作流程,网站招商广告语?
如何在腾讯云服务器上快速搭建个人网站?
北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?
广州美橙建站如何快速搭建多端合一网站?
网站制作大概多少钱一个,做一个平台网站大概多少钱?
如何做网站制作流程,*游戏网站怎么搭建?
*请认真填写需求信息,我们会在24小时内与您取得联系。