不错的判断设备类型和识别浏览器的js代码

发表于2016-11-15 13:51:33

       用js判断设备类型和识别浏览器,相信稍微有点前端基础的都应该会写。不过这种东西一般不是跨平台,兼容多种设备的大项目,用到的地方不会很多。之前在一家小公司工作,顶多就是判断一下屏幕分辨率,做一下自适应,根本不用判断设备类型和识别浏览器。
现在有幸在一家大一点的公司工作,看了人家的相关代码,发现确实写的不错。而且这种东西,收藏起来,复制粘贴一下就能用,能省很多事,如果有不同的需求改一下就行,十分方便。也给还不知道怎么通过js判断设备类型和识别浏览器的同学提供个参考。

(function(){
var UA = {};
var ua = navigator.userAgent.toLowerCase(),s;
UA.ie = (s = ua.match(/(msie\s|trident.*rv:)([\d.]+)/))? parseInt(s[2]):false;
UA.firefox = (s =ua.match(/firefox\/([\d.]+)/))? parseInt(s[1]):false;
UA.chrome = (s = ua.match(/chrome\/([\d.]+)/))?parseInt(s[1]):false;
UA.opera = (s = ua.match(/opera.([\d.]+)/))?parseInt(s[1]):false;
UA.safari = (s = ua.match(/version\/([\d.]+).*safari/))?parseInt(s[1]):false;
UA.android = (s=ua.match(/android/))?s:false;
UA.iphone = (s=ua.match(/iphone os/))?s:false;
UA.ipad = (s=ua.match(/ipad/))?s:false;
UA.ios = UA.ipad || UA.iphone;
UA.isWin32 = /win32/i.test(window.navigator.platform);
UA.isWeixin = (s=ua.match(/MicroMessenger/i))?!!s:false; //判断是否是在微信浏览器里面
UA.isUcweb = (s=ua.match(/ucbrowser/))?!!s:false;
UA.isMqq = (s=ua.match(/mqqbrowser/))?!!s:false; //是否是手机qq浏览器
UA.isWeiBo = (s=ua.match(/__weibo__/))?!!s:false; //是否微博浏览器
window.UA=UA;
console.log(UA);
})();



转载自:http://www.qdfuns.com/notes/23467/bcb9d2e3eef3f7b423c111a92a5d953d.html

评论(0)

请先登录后再评论,如果没有账号请先注册

发表评论