ua.js 获取访客浏览器与操作系统信息的方式

       actionlog_js_ua.js混淆编程形式与执行主流程

       ua.js中UA_Opt设定信息的重要性与来源分析

       ua.js文件load事件自定义处理函数功能解析

       ua.js中mousedown和mousemove事件自定义函数功能解析

       ua.js文件focus&blur&keydown事件分析

       ua.js中UA生成函数vq4的“庐山真面目”

       ua.js中网络超时检测函数 wql 功能分析

       ua.js中用 image 对象实现页面访问统计

       ua.js中JSocket.getlso和JSocket.setlso代码分析

       ua.js中arguments.callee.caller的应用

       ua.js 获取访客浏览器与操作系统信息的方式

      淘宝ua.js在load事件处理函数中,使用正则表达式和navigator[“userAgent”]navigator[“platform”] 来获取访客的浏览器和操作系统信息,也会获取访客屏幕分辨率和浏览器窗口尺寸,用这些信息来更新UA。

       获取访客浏览器与操作系统信息

       ua.jsload处理函数中调用函数ihdihd函数中包含获取运行浏览器的操作系统信息的代码,ihd通过调用函数h3d6获取浏览器信息。函数ihd和h3d6反混淆和简化之后的代码如下所示:

       由代码可知,函数ihd通过正则表达式从navigator[“userAgent”]navigator[“platform”]中获取访客操作系统信息,而通过调用函数h3d6来获取浏览器信息。函数h3d6中也通过正则表达式从navigator[“userAgent”]提取访客浏览器信息。navigator[“userAgent”]声明了浏览器用于HTTP 请求的用户代理头的值navigator[“platform”]声明了运行浏览器的操作系统和()硬件平台。

       可以直接新建一个html文件,添加上述代码来验证上述代码的运行结果。以我的电脑为例:windows10,用火狐浏览器运行上述代码。函数h3d6返回数组第一个元素是浏览器名称Firefox,第二个元素是当前使用浏览器主版本号43,而os则是windows。

      获取运行浏览器屏幕分辨率和浏览器

      ua.jsload处理函数中调用函数bqx3获取运行浏览器屏幕的分辨率,浏览器屏幕的可用宽度与高度,网页可见区域的宽度和高度信息,其反混淆,简化后的代码如下所示:     

       这部分的代码我能看懂,所以我想大家应该都能看懂。但我不是很明白screen.availwidth, screen.width, document.body.clientWidth这几类变量之间的关系,我在google上找了一张说明它们关系的图,共享给大家。

       

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

Fork me on GitHub