Javascript中获取浏览器类型和操作系统版本等客户
网络编程 2021-07-04 20:00www.168986.cn编程入门
跟踪一些最基本的客户端访问信息,这里将一些公用的代码下来,需要的朋友可以参考下
/ @author hechen / var gs = { /获得屏幕宽度/ ScreenWidth: function () { return window.screen.width; }, /获得屏幕高度/ ScreenHeight: function () { return window.screen.height; }, /获得浏览器/ Browse: function () { var browser = {}; var userAgent = navigator.userAgent.toLowerCase(); var s; (s = userAgent.match(/msie ([\d.]+)/)) ? browser.ie = s[1] : (s = userAgent.match(/firefox\/([\d.]+)/)) ? browser.firefox = s[1] : (s = userAgent.match(/chrome\/([\d.]+)/)) ? browser.chrome = s[1] : (s = userAgent.match(/opera.([\d.]+)/)) ? browser.opera = s[1] : (s = userAgent.match(/version\/([\d.]+).safari/)) ? browser.safari = s[1] : 0; var version = ""; if (browser.ie) { version = 'IE ' + browser.ie; } else { if (browser.firefox) { version = 'firefox ' + browser.firefox; } else { if (browser.chrome) { version = 'chrome ' + browser.chrome; } else { if (browser.opera) { version = 'opera ' + browser.opera; } else { if (browser.safari) { version = 'safari ' + browser.safari; } else { version = '未知浏览器'; } } } } } return version; }, /获得操作系统/ ClientOs: function () { var sUserAgent = navigator.userAgent; var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows"); var isMac = (navigator.platform == "Mac68K") || (navigator.platform == "MacPPC") || (navigator.platform == "Macintosh") || (navigator.platform == "MacIntel"); if (isMac) return "Mac"; var isUnix = (navigator.platform == "X11") && !isWin && !isMac; if (isUnix) return "Unix"; var isLinux = (String(navigator.platform).indexOf("Linux") > -1); if (isLinux) return "Linux"; if (isWin) { var isWin2K = sUserAgent.indexOf("Windows NT 5.0") > -1 || sUserAgent.indexOf("Windows 2000") > -1; if (isWin2K) return "Win2000"; var isWinXP = sUserAgent.indexOf("Windows NT 5.1") > -1 || sUserAgent.indexOf("Windows XP") > -1; if (isWinXP) return "WinXP"; var isWin2003 = sUserAgent.indexOf("Windows NT 5.2") > -1 || sUserAgent.indexOf("Windows 2003") > -1; if (isWin2003) return "Win2003"; var isWinVista = sUserAgent.indexOf("Windows NT 6.0") > -1 || sUserAgent.indexOf("Windows Vista") > -1; if (isWinVista) return "WinVista"; var isWin7 = sUserAgent.indexOf("Windows NT 6.1") > -1 || sUserAgent.indexOf("Windows 7") > -1; if (isWin7) return "Win7"; } return "other"; }, /获得客户端ID/ ClientID: function (name) { var cookies = document.cookie.split(";"); var value = ""; for (var i = 0; i < cookies.length; i++) { var temp = cookies[i].split("="); var tempValue = temp[0].replace(/(^\s)|(\s$)/g, ""); if (tempValue == name) { value = unescape(temp[1]); break; } } return value; }, /获得商品ID/ SearchGid: function () { var url = window.location.href; var value = ""; if (url != undefined && url != "") { url.replace(/-\d+-/, function (a, b, c) { if (a != undefined && a != "" && a.length > 2) { value = a.substring(1, a.length - 1); } }); } return value; }, /获得站内搜索关键字/ SearchKey: function () { var url = window.location.href; var value = ""; if (url != undefined && url != "") { url.replace(/[=]./, function (a, b, c) { if (a != undefined && a != "" && a.length > 1) { value = a.substring(1); } }); } return value; }, /获得商品分类搜索编号/ SearchCategory: function () { var url = window.location.href; var value = ""; if (url != undefined && url != "") { url.replace(/-\d+/, function (a, b, c) { if (a != undefined && a != "" && a.length > 1) { value = a.substring(1); } }); } return value; }, /站外搜索 Google 百度/ SearchSite: function (type) { var referrer = document.referrer; if (referrer != undefined && referrer != "") { if ("google" == type) { url.replace(new RegExp("(?:^|/?|&)q=([^&])(?:&|$)"), function (a, b, c) { if (this._ch != undefined && a != undefined && a.length > 0) { a = a.substring(a.indexOf("=") + 1, a.length - 1); return a; } }); } else if ("baidu" == type) { url.replace(new RegExp("(?:^|/?|&)wd=([^&])(?:&|$)"), function (a, b, c) { if (this._ch != undefined && a != undefined && a.length > 0) { a = a.substring(a.indexOf("=") + 1, a.length - 1); return a; } }); } else if ("sogou" == type) { url.replace(new RegExp("(?:^|/?|&)query=([^&])(?:&|$)"), function (a, b, c) { if (this._ch != undefined && a != undefined && a.length > 0) { a = a.substring(a.indexOf("=") + 1, a.length - 1); return a; } }); } else if ("bing" == type) { url.replace(new RegExp("(?:^|/?|&)q=([^&])(?:&|$)"), function (a, b, c) { if (this._ch != undefined && a != undefined && a.length > 0) { a = a.substring(a.indexOf("=") + 1, a.length - 1); return a; } }); } } return ""; }, /将值插入到数组中/ PushValue: function (key, value) { if (this._ch != undefined) { this._ch[key] = value; } }, /自定义参数/ Param: function (value) { if (this._ch != undefined) { this._ch["_ps"] = value; } }, /提交数据到后台/ PostData: function () { $.ajax({ url: "http://localhost:28482/Ajax/StatActions.aspx?t=" + Math.random(), type: "post", data: this._ch, suess: function (data) { } }); }, /初始化/ Init: function () { if (this._ch != undefined) { this._ch = undefined; } this._ch = {}; if (this._Reg != undefined) { this._Reg = undefined; } //初始化正则表达式 匹配URL this._Reg = new Array(); this._Reg[0] = "http://.google..hk(.)"; this._Reg[1] = "http://.baidu.(.)"; this._Reg[2] = "http://.sogou.(.)"; this._Reg[3] = "http://.bing.(.)"; //分析URL参数 var hostURL = window.location.href; if (hostURL != undefined && hostURL != "") { if ((new RegExp(this._Reg[4])).test(hostURL)) { this._ch["_gid"] = this.SearchGid(); } else if ((new RegExp(this._Reg[7])).test(hostURL)) { } else if ((new RegExp(this._Reg[5])).test(hostURL)) { this._ch["_cid"] = this.SearchCategory(); } else if ((new RegExp(this._Reg[6])).test(hostURL)) { this._ch["_key"] = this.SearchKey(); } this._ch["_tu"] = hostURL; } var referrer = document.referrer; if (referrer != undefined && referrer != "") { if ((new RegExp(this._Reg[0])).test(referrer)) { this._ch["_key"] = this.SearchSite("google"); } else if ((new RegExp(this._Reg[1])).test(referrer)) { this._ch["_key"] = this.SearchSite("baidu"); } else if ((new RegExp(this._Reg[2])).test(referrer)) { this._ch["_key"] = this.SearchSite("sogou"); } else if ((new RegExp(this._Reg[3])).test(referrer)) { this._ch["_key"] = this.SearchSite("bing"); } this._ch["_su"] = referrer; } //获取客户端相关信息 this._ch["_sw"] = this.ScreenWidth(); this._ch["_sh"] = this.ScreenHeight(); this._ch["_bw"] = this.Browse(); this._ch["_cs"] = this.ClientOs(); this._ch["_mid"] = this.ClientID("from_channelid"); this._ch["_ctid"] = this.ClientID("ClientKey"); }, _ch: undefined, _Reg: undefined
以上就是本文的全部内容,了解更多JavaScript的语法,大家可以查看《》、《》,也希望大家多多支持狼蚁SEO。
上一篇:js改变css样式的三种方法推荐
下一篇:获取input标签的所有属性的方法
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程