欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript實(shí)現(xiàn)用戶點(diǎn)擊數(shù)量統(tǒng)計(jì)

 更新時(shí)間:2016年12月25日 09:38:29   作者:插秧哥  
本文主要javascript實(shí)現(xiàn)用戶點(diǎn)擊數(shù)量統(tǒng)計(jì)的方法進(jìn)行詳細(xì)介紹,具有很好的參考價(jià)值,需要的朋友一起來看下吧

在微信上做一次推廣活動(dòng),頁面共計(jì)三個(gè)按鈕,需要分別統(tǒng)計(jì)點(diǎn)擊次數(shù),pc上的相關(guān)統(tǒng)計(jì)用的是“百度統(tǒng)計(jì)”,因?yàn)镠5活動(dòng)頁的時(shí)效性等原因,并沒有使用百度統(tǒng)計(jì),而是自己實(shí)現(xiàn)一個(gè)簡(jiǎn)單的統(tǒng)計(jì)小方案前端點(diǎn)擊時(shí)請(qǐng)求一個(gè)空白小gif圖,帶有參數(shù),后端同事根據(jù)nginx請(qǐng)求日志做統(tǒng)計(jì),通過在cookie中存入一個(gè)不會(huì)重疊的時(shí)間戳作為key值來區(qū)分是否同一用戶(uv)。

請(qǐng)求的圖片存在七牛中,是固定不變的,主要變化是后面兩個(gè)參數(shù):用戶標(biāo)識(shí)uid和按鈕標(biāo)識(shí),其中生成不重復(fù)(把重復(fù)率降到最低)的用戶標(biāo)識(shí)很有意思。

時(shí)間戳用new Date().getTime()得出一個(gè)13位的“隨機(jī)數(shù)”,精確到毫秒,但萬一同一毫秒有兩個(gè)以上用戶點(diǎn)擊呢?于是再嚴(yán)謹(jǐn)一些,用for循環(huán)在隨機(jī)一個(gè)5位字符串拼接,這樣的重復(fù)率絕對(duì)夠用:

uid = new Date().getTime();
var randomNumber = '';
for(var i = 0 ; i < 5 ; i ++){
 randomNumber += new String (Math.floor(Math.random() * 10));
}
uid = uid + randomNumber;

下面是具體邏輯代碼,當(dāng)網(wǎng)頁中已有請(qǐng)求圖片時(shí),更改url的參數(shù)也一樣能從新發(fā)起一個(gè)get請(qǐng)求,避免每次點(diǎn)擊都append一張圖片。這種實(shí)現(xiàn)方法感覺比點(diǎn)擊發(fā)送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 +'"/>');
 }
}

以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時(shí)也希望多多支持腳本之家!

相關(guān)文章

最新評(píng)論