最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript精確統(tǒng)計網(wǎng)站訪問量實例代碼

 更新時間:2015年12月19日 15:03:14   作者:zhengzebiaodashi  
網(wǎng)站一般都有訪問量統(tǒng)計工具,比較高效實用的工具多種多樣,這篇文章主要介紹了javascript精確統(tǒng)計網(wǎng)站訪問量實例代碼,感興趣的小伙伴們可以參考一下

網(wǎng)站一般都有訪問量統(tǒng)計工具,比較高效實用的工具多種多樣,并且非常的精確。實用javascript也可以簡單的實現(xiàn)此功能,盡管沒有網(wǎng)絡(luò)上常用的精確,不過的確也實現(xiàn)了一定的功能,下面就是一段代碼實例,感興趣的朋友可以參考一下:

<script type="text/javascript">
/**
* vlstat 瀏覽器統(tǒng)計腳本
*/
var statIdName = "vlstatId";
var xmlHttp;
/**
* 設(shè)置cookieId
*/
function setCookie(c_name, value, expiredays) {
  var exdate = new Date();
  exdate.setDate(exdate.getDate() + expiredays);
  document.cookie = c_name + "=" + escape(value) + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString()) + ";path=/;domain=cecb2b.com";
}
/**
* 獲取cookieId
*/
function getCookie(c_name) {
  if (document.cookie.length > 0) {
    c_start = document.cookie.indexOf(c_name + "=");
    if (c_start != -1) {
      c_start = c_start + c_name.length + 1;
      c_end = document.cookie.indexOf(";", c_start);
      if (c_end == -1) {
        c_end = document.cookie.length;
      }
      return unescape(document.cookie.substring(c_start, c_end));
    }
  }
  return "";
}
/**
* 獲取當(dāng)前時間戳
*/
function getTimestamp() {
  var timestamp = Date.parse(new Date());
  return timestamp;
}
/**
* 生成statId
*/
function genStatId() {
  var cookieId = getTimestamp();
  cookieId = "vlstat" + "-" + cookieId + "-" + Math.round(Math.random() * 3000000000);
  return cookieId;
}
/**
* 設(shè)置StatId
*/
function setStatId() {
  var cookieId = genStatId();
  setCookie(statIdName, cookieId, 365);
}
/**
* 獲取StatId
*/
function getStatId() {
  var statId = getCookie(statIdName);
  if (statId != null && statId.length > 0) {
    return statId;
  } else {
    setStatId();
    return getStatId();
  }
}
/**
* 獲取UA
*/
function getUA() {
  var ua = navigator.userAgent;
  if (ua.length > 250) {
    ua = ua.substring(0, 250);
  }
  return ua;
}
/**
* 獲取瀏覽器類型
*/
function getBrower() {
  var ua = getUA();
  if (ua.indexOf("Maxthon") != -1) {
    return "Maxthon";
  } else if (ua.indexOf("MSIE") != -1) {
    return "MSIE";
  } else if (ua.indexOf("Firefox") != -1) {
    return "Firefox";
  } else if (ua.indexOf("Chrome") != -1) {
    return "Chrome";
  } else if (ua.indexOf("Opera") != -1) {
    return "Opera";
  } else if (ua.indexOf("Safari") != -1) {
    return "Safari";
  } else {
    return "ot";
  }
}
/**
* 獲取瀏覽器語言
*/
function getBrowerLanguage() {
  var lang = navigator.browserLanguage;
  return lang != null && lang.length > 0 ? lang : "";
}
/**
* 獲取操作系統(tǒng)
*/
function getPlatform() {
  return navigator.platform;
}
/**
* 獲取頁面title
*/
function getPageTitle() {
  return document.title;
}
/**
* 創(chuàng)建一個form
* 
* @return
*/
function createSubmitForm() {
  var frm = document.createElement("form");
  document.body.appendChild(frm);
  frm.method = "POST";
  return frm;
}
/**
* 為form創(chuàng)建一個元素
* 
* @param inputForm
* @param elementName
* @param elementValue
* @return
*/
function createFormElement(frmInput, elementName, elementValue) {
  var element = document.createElement("input");
  element.setAttribute("id", elementName);
  element.setAttribute("name", elementName);
  element.setAttribute("type", "hidden");
  element.setAttribute("value", elementValue);
  frmInput.appendChild(element);
  return element;
}
/**
* 構(gòu)造XMLHttpRequest對象
* 
* @return
*/
function createXMLHttpRequest() { 
if (window.ActiveXObject) { 
 xmlHttp = new ActiveXObject('Microsoft.XMLHTTP'); 
} else if (window.XMLHttpRequest) { 
 xmlHttp = new XMLHttpRequest(); 
} 
}
/**
* url指定跳轉(zhuǎn)頁,data是要post的數(shù)據(jù)。func類似于函數(shù)指針
* 
* @param url
* @param data
* @param func
* @return
*/
function AjaxPost(url, data, func) {
  var httpRequest = createHttpRequest();
  if (httpRequest) {
    httpRequest.open("POST", url, true);
    httpRequest.setRequestHeader("content-length", data.length);
    httpRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    httpRequest.send(data);
    httpRequest.onreadystatechange = function() {
      if (httpRequest.readyState == 4) {
        try {
          if (httpRequest.status == 200) {
            if (func) {
              // 這里可以調(diào)用想要的函數(shù)
              func(httpRequest.responseText);
            }
          }
        } catch (e) {
          alert("Error XMLHttpRequest!");
        }
      }
    }
  } else {
    alert("Error initializing XMLHttpRequest!");
  }
}
function vlstatInitLE(vlch, vlch1, vlch2, vlch3) {
  var p;
  var vlstatCH = vlch != null && vlch.length > 0 ? vlch : "";
  var vlstatCH1 = vlch1 != null && vlch1.length > 0 ? vlch1 : "";
  var vlstatCH2 = vlch2 != null && vlch2.length > 0 ? vlch2 : "";
  var vlstatCH3 = vlch3 != null && vlch3.length > 0 ? vlch3 : "";
  var vlstatCookieId = getStatId();
  var vlstatUA = encodeURIComponent(getUA());
  var vlstatIPAddress = document.localName;
  var vlstatREFURL = encodeURIComponent(document.referrer);
  var vlstatURL = encodeURIComponent(document.URL);
  var vlstatScreenX = screen.width;
  var vlstatScreenY = screen.height;
  var vlstatOS = getPlatform();
  var vlstatBrower = getBrower();
  var vlstatBrowerLanguage = getBrowerLanguage();
  var vlstatPageTitle = encodeURIComponent(getPageTitle());
  var vlstatAction = "index.php";
  p = "cookieId=" + vlstatCookieId + "&ua=" + vlstatUA + "&ip=" + vlstatIPAddress + "&refurl="
      + vlstatREFURL + "&url=" + vlstatURL + "&screenX=" + vlstatScreenX + "&screenY=" + vlstatScreenY
      + "&os=" + vlstatOS + "&brower=" + vlstatBrower + "&browerLang=" + vlstatBrowerLanguage
      + "&title=" + vlstatPageTitle + "&ch=" + vlstatCH + "&ch1=" + vlstatCH1 + "&ch2=" + vlstatCH2
      + "&ch3=" + vlstatCH3;
  var urlGo = vlstatAction + "?" + p;
  createXMLHttpRequest();
xmlHttp.open('GET', urlGo);
xmlHttp.send(null);
}
</script>

希望本文所述對大家學(xué)習(xí)javascript程序設(shè)計有所幫助。

相關(guān)文章

  • layui表格 返回的數(shù)據(jù)狀態(tài)異常的解決方法

    layui表格 返回的數(shù)據(jù)狀態(tài)異常的解決方法

    今天小編就為大家分享一篇layui表格 返回的數(shù)據(jù)狀態(tài)異常的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • checkbox勾選判斷代碼分析

    checkbox勾選判斷代碼分析

    我們在做項目的時候,特別是注冊用戶的時候,基本上都需要有注冊協(xié)議之類的東西,那么我們?nèi)绾闻袛嘤脩羰欠窆催x了同意了此協(xié)議呢?
    2014-06-06
  • 詳解JavaScript如何優(yōu)雅地實現(xiàn)創(chuàng)建多維數(shù)組

    詳解JavaScript如何優(yōu)雅地實現(xiàn)創(chuàng)建多維數(shù)組

    多維數(shù)組的意思是指三維或者三維以上的數(shù)組。這篇文章將通過示例為大家詳細講解一下JavaScript如何實現(xiàn)優(yōu)雅地創(chuàng)建多維數(shù)組,需要的可以參考一下
    2022-07-07
  • Javascript Tab 導(dǎo)航插件 (23個)

    Javascript Tab 導(dǎo)航插件 (23個)

    實現(xiàn)tab頁很多方法,有一些是用純CSS實現(xiàn),其他大多數(shù)是基于jquery、mootools或者其他js框架實現(xiàn),既然有這么多可以拿來即用的插件,又何苦重復(fù)造輪子。
    2009-06-06
  • 代碼塊高亮可復(fù)制顯示js插件highlight.js+clipboard.js整合

    代碼塊高亮可復(fù)制顯示js插件highlight.js+clipboard.js整合

    最近有個需求是將jsp頁面上的某一段代碼塊格式化成類似CSDN的代碼塊的樣式,而且很多平臺都使用了這樣的功能,下面就為大家簡單分享一下
    2021-02-02
  • 詳解JavaScript模板化使文章更清晰的全過程

    詳解JavaScript模板化使文章更清晰的全過程

    模塊化就是把一大段代碼拆分成一個個小文件(模塊),每個模塊獨立工作,互相協(xié)作,那么JavaScript模板化是如何使文章更清晰呢,本文給大家詳細介紹了JavaScript模板化使文章更清晰的全過程,需要的朋友可以參考下
    2025-04-04
  • 前端使用minio傳輸文件的代碼及拓展

    前端使用minio傳輸文件的代碼及拓展

    MinIO是一款基于Go語言的高性能對象存儲服務(wù),非常適合于存儲大容量非結(jié)構(gòu)化的數(shù)據(jù),例如圖片、視頻、日志文件、備份數(shù)據(jù)和容器/虛擬機鏡像等,這篇文章主要給大家介紹了關(guān)于前端使用minio傳輸文件的相關(guān)資料,需要的朋友可以參考下
    2024-07-07
  • Hammer.js+輪播原理實現(xiàn)簡潔的滑屏功能

    Hammer.js+輪播原理實現(xiàn)簡潔的滑屏功能

    這篇文章主要介紹了Hammer.js+輪播原理實現(xiàn)簡潔的滑屏功能的相關(guān)資料,需要的朋友可以參考下
    2016-02-02
  • js數(shù)組實現(xiàn)權(quán)重概率分配

    js數(shù)組實現(xiàn)權(quán)重概率分配

    今天寫了一個js控制頁面輪播的功能,如果僅僅使用隊列很簡單,但是考慮到為每一個頁面分配權(quán)重的是否變的異常復(fù)雜,使用switch和if else也無法解決,于是想到使用js數(shù)組實現(xiàn)
    2017-09-09
  • 微信小程序一周時間表功能實現(xiàn)

    微信小程序一周時間表功能實現(xiàn)

    這篇文章主要介紹了微信小程序一周時間表功能實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10

最新評論

额敏县| 含山县| 海南省| 阿瓦提县| 永宁县| 永清县| 河池市| 桂平市| 抚州市| 闻喜县| 白朗县| 沈阳市| 卫辉市| 祥云县| 屏东县| 鄱阳县| 辽中县| 东台市| 修武县| 渝中区| 阿合奇县| 福鼎市| 靖安县| 茶陵县| 磐安县| 灵璧县| 林西县| 肥东县| 柏乡县| 阿克陶县| 扶余县| 开阳县| 宜章县| 唐河县| 乃东县| 田阳县| 株洲县| 城市| 康乐县| 区。| 连云港市|