对各浏览器userAgent的检测客户端
一、正则验证设备方法
web前端能够通过js来辨别mobile or pc,下面就列举一些常用的浏览器userAgent:
var agent=navigator.userAgent;
var patternMobile=/mobile/ig;
var patternModel={
"iphone":new RegExp("iPhone",'i'),
"iPad":new RegExp("iPad",'i'),
"iPod":new RegExp("iPod",'i'),
"mini":new RegExp("mini",'i'),
"android":new RegExp("android",'i'),
"360":new RegExp("360\s+Aphone\s+Browser",'i'),
"baidu":new RegExp("baidubrowser",'i'),
"uc":new RegExp("UCBrowser",'i'),
"dolphin":new RegExp("DolphinBrowserCN",'i'),
"sougou":new RegExp("SogouMobileBrowser",'i'),
"lenvo":new RegExp("Lenovo-",'i'),"opera":new RegExp("OPR",'i'),
"chrome":new RegExp("chrome",'i'),
"firefox":new RegExp("FireFox",'i'),
"qq":new RegExp("MQQBrowser",'i'),
"nokia":new RegExp("NokiaBrowser",'i'),
"Symbian":new RegExp("Symbian",'i'),
"windowsphone":new RegExp("Windows\s+Phone|w7|w8",'i'),
"weixin":new RegExp("WindowsWechat",'i')
}
浏览器的检测
1.patternMobile.test(agent) //检测是否为手机端
2.patternModel.iphone.test(agent) //检测是否为iphoe
3.patternModel.iPad.test(agent) //检测是否为ipad
4.patternModel.iPod.test(agent) //检测是否为iPod
5.patternModel.mini.test(agent) //检测是否为iphone mini
6.patternModel.iphone.test(agent) |patternModel.iPad.test(agent)|patternModel.iPod.test(agent)|patternModel.mini.test(agent) //检测是否为iphone 设备
7.patternModel.android.test(agent) //检测是否为android设备
8.patternModel.360.test(agent)&&patternMobile.test(agent) //检测是否为360手机浏览器
9.patternModel.baidu.test(agent)&&patternMobile.test(agent) //检测是否为百度手机浏览器
10.patternModel.uc.test(agent)&&patternMobile.test(agent) //检测是否为uc手机浏览器
11.patternModel.dolphin.test(agent)&&patternMobile.test(agent) //检测是否为海豚手机浏览器
12.patternModel.sougou.test(agent)&&patternMobile.test(agent) //检测是否为搜狗手机浏览器
13.patternModel.lenvo.test(agent)&&patternMobile.test(agent) //检测是否为联想自带手机浏览器
14.patternModel.opera.test(agent)&&patternMobile.test(agent) //检测是否为opera手机浏览器
15.patternModel.chrome.test(agent)&&patternMobile.test(agent) //检测是否为chrome手机浏览器
16.patternModel.firefox.test(agent)&&patternMobile.test(agent) //检测是否为firefox手机浏览器
17.patternModel.qq.test(agent)&&patternMobile.test(agent) //检测是否为qq手机浏览器
18.patternModel.nokia.test(agent)&&patternMobile.test(agent) //检测是否为nokia自带浏览器
19.patternModel.Symbian.test(agent)&&patternMobile.test(agent) //检测是否为Symbian浏览器
20.patternModel.windowsphone.test(agent) //检测是否为windowsphone
21.patternModel.weixin.test(agent) //检测是否为微信windows版
注:手机浏览器允许修改浏览器的标识,可能会出现检测异常的情况
二、完整的浏览器检查
var client=function(){//呈现引擎var engine={ie:0,gecko:0,webkit:0,khtml:0,opera:0,ver:null,//版本号};//浏览器var browser={ie:0,firefox:0,safari:0,konq:0,opera:0,chrome:0,ver:null};//平台、设备和操作系统var system={win:false,mac:false,x1l:false,iphone:false,ipod:false,ipad:false,ios:false,android:false,nokiaN:false,winMobile:false,wii:false,//游戏系统ps:false};var ua=navigator.userAgent;if(window.opera){engine.ver=browser.ver=window.opera.version();engine.opera=browser.opera=parseFloat(engine.ver);}else if(/AppleWebkit\/(\S+)/.test(ua)){engine.ver=RegExp['$1'];engine.webkit=parseFloat(engine.ver);//确定是Chrome还是safariif(/Chrome\/(\S+)/.test(ua)){browser.ver=RegExp['$1'];browser.chrome=parseFloat(browser.ver);}else if(/Version\/(\S+)/.test(ua)){browser.ver=RegExp['$1'];browser.safari=parseFloat(browser.ver);}else{var safariVersion = 1;if(engine.webkit<100){safariVersion = 1;}else if(engine.webkit<312){safariVersion = 1.2;}else if(engine.webkit<412){safariVersion = 1.3;}else{safariVersion = 2;}browser.safari=browser.ver=safariVersion;}}else if(/KHTML\/(\S+)/.test(ua) || /Konqueror\/([^;]+)/.test(ua)){engine.ver=browser.ver=RegExp['$1'];engine.khtml=browser.konq=parseFloat(engine.ver);}else if(/rv:([^\)]+)\) Gecko\/\d{8}/.test(ua)){engine.ver=RegExp['$1'];engine.gecko=parseFloat(engine.ver);//确定是不是firefoxif(/Firefox\/(\S+)/.test(ua)){browser.ver=RegExp['$1'];browser.firefox=parseFloat(browser.ver);}}else if(/MISE ([^;]+)/.test(ua)){browser.ver=engine.ver=RegExp['$1'];engine.ie=browser.ie=parseFloat(engine.ver);}browser.ie=engine.ie;browser.opera=engine.opera;//检测平台var p=navigator.platform;system.win=p.indexOf('Win')==0;system.mac=p.indexOf('Mac')==0;system.x1l=(p=="X11") || (p.indexOf('Linux')==0);//检测windows操作系统if(system.win){if(/Win(?:dows )?([^do]{2})\s?(\d+\.\d+)?/.test(ua)){if(RegExp['$1']=="NT"){switch(RegExp['$2']){case '5.0':system.win="2000";break;case '5.1':system.win="XP";break;case '6.0':system.win="Vista";break;case '6.1':system.win="7";break;default:system.win="NT";break;}}else if(RegExp['$1']=='9x'){system.win="ME";}else{system.win=RegExp['$1'];}}}//移动设备system.iphone=ua.indexOf('iPhone')>-1;system.ipod=ua.indexOf('iPod')>-1;system.ipad=ua.indexOf('iPad')>-1;system.nokiaN=ua.indexOf('NokiaN')>-1;//windows mobileif(system.win=="CE"){system.winMobile=system.win;}else if(system.win=="Ph"){if(/Windows Phone OS (\d+.\d+)/.test(ua)){system.win="Phone";system.winMobile=parseFloat(RegExp['$1']);}}//检测iosif(system.mac && ua.indexOf("Mobile")>-1){if(/CPU (?:iPhone )?OS (\d+_\d+)/.test(ua)){system.ios=parseFloat(RegExp.$1.replace("_","."));}else{system.ios=2;}}//检测Android版本if(/Android (\d+\.\d+)/.test(ua)){system.android=parseFloat(RegExp.$1);}//游戏系统system.wii=ua.indexOf("Wii")>-1;system.ps=/playstation/i.test(ua);return {engine:engine,browser:browser,system:system};
}
对各浏览器userAgent的检测客户端相关推荐
- php浏览器类型检测工具,php检测客户端浏览器类型的简单示例
这篇文章主要为大家详细介绍了php检测客户端浏览器类型的简单示例,具有一定的参考价值,可以用来参考一下. 对php检测客户端浏览器类型代码感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! ...
- 3个检测浏览器User-Agent信息的网站
刚刚在收集各个移动平台浏览器的User-Agent(参见这里: 收集几个移动平台浏览器的User-Agent)的时候,遇到了这3个网站,觉得以后还是会用得到的,这里收藏一下,检测浏览器User-Age ...
- 【总结】浏览器 User-Agent 大全
一.基础知识 Http Header之User-Agent User Agent中文名为用户代理,是Http协议中的一部分,属于头域的组成部分,User Agent也简称UA.它是一个特殊字符串头,是 ...
- 总结整理时下流行的浏览器User-Agent大全
转载自:http://www.360doc.com/content/12/1012/21/7662927_241124973.shtml 以下为原文: 截止今天,关于精准广告定向技术的介绍已经全部写完 ...
- 检测客户端是PC,微信还是手机
检测客户端是PC,微信还是手机 import java.io.IOException; import java.util.regex.Matcher; import java.util.rege ...
- 数据埋点-浏览器User-Agent大全
<转自http://www.360doc.com/content/12/1012/21/7662927_241124973.shtml> 以下为原文: 截止今天,关于精准广告定向技术的介绍 ...
- Python从入门到摔门(7):【总结】浏览器 User-Agent 大全
浏览器宣传图 一.基础知识 Http Header之User-Agent User Agent中文名为用户代理,是Http协议中的一部分,属于头域的组成部分,User Agent也简称UA.它是一个特 ...
- 常见浏览器User-Agent大全
下面是工作中需要用到的常见浏览器User-Agent字符串的收集整理,不断更新中. Opera Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537. ...
- PHP文件在线检测病毒,VIRSCAN 在线病毒检测客户端
/**** 本程序以及提供的源码仅供技术交流使用. 作者不作任何类型担保,在任何情况下都不对使用本软件造成的任何损失或任何相应而生. 间接.附带的损失承担任何责任. ****/importwin.ui ...
最新文章
- Zookeeper之javaAPI的使用
- python三大神器===》迭代器
- python资料库-python 资源库
- Dubbo的静态服务
- python装饰器使用多吗_对于Python装饰器使用的一些建议
- java学习笔记十一——对象转型
- 国产自主可控的嵌入式仿真软件SkyEye和同步数据流语言高阶运算消去的可信翻译
- Spring mvc Controller接口
- 测试sql server服务是否配置正确
- 电脑出现的问题以及解决方法
- 今天主要改了罗宾钢琴的首页图片缩放问题
- win7下安装openSSH
- 深信服桌面云(aDesk)学习笔记
- 编辑PDF时怎样删除文件中的图片
- yarn安装JEST报错:EPERM: operation not permitted, unlink 解决方法
- Excel 文件怎么批量插入首页、扉页、尾页?怎么将某个 Excel 文件批量插入到其它 Excel 文件的指定位置?
- 四个漂亮CSS样式表
- 汽车车身钣金—车身连接方式
- UI设计需要学习哪些软件?
- mib browser打开mib文件