js检测浏览器版本、核心、是否移动端示例
检测浏览器版本、核心、系统和是否移动端
/**
* check browser version
* @authors K
* @date 2014-04-11 14:48:39
* @version 1
*/
/**
* detect browser info with navigator userAgent
* @return object browser info
*/
var browser = (function(){
var userAgent = navigator.userAgent,
ua = userAgent.toLowerCase(),
browserList = {
msie : /(?:msie\s|trident.*rv:)([\w.]+)/i,
firefox : /Firefox\/([\w.]+)/i,
chrome : /Chrome\/([\w.]+)/i,
safari : /version\/([\w.]+).*Safari/i,
opera : /(?:OPR\/|Opera.+version\/)([\w.]+)/i
},
kernels = {
MSIE: /(compatible;\smsie\s|Trident\/)[\w.]+/i,
Camino: /Camino/i,
KHTML: /KHTML/i,
Presto: /Presto\/[\w.]+/i,
Gecko : /Gecko\/[\w.]+/i,
WebKit: /AppleWebKit\/[\w.]+/i
},
browser = {
kernel : 'unknow',
version : 'unknow'
}
// 检测浏览器
for(var i in browserList){
var matchs = ua.match(browserList[i]);
browser[i] = matchs ? true : false;
if(matchs){
browser.version = matchs[1];
}
}
// 检测引擎
for(var i in kernels){
var matchs = ua.match(kernels[i]);
if(matchs){
browser.kernel = matchs[0];
}
}
// 系统
var os = ua.match(/(Windows\sNT\s|Mac\sOS\sX\s|Android\s|ipad.*\sos\s|iphone\sos\s)([\d._-]+)/i);
browser.os = os!==null ? os[0] : false;
// 是否移动端
browser.mobile = ua.match(/Mobile/i)!==null ? true : false;
return browser;
}());
相关文章
Javascript typeof与instanceof的区别
JavaScript 中 typeof 和 instanceof 常用来判断一个变量是否为空,或者是什么类型的。但它们之间还是有区别的,需要的朋友可以参考下2016-10-10Node.js生成HttpStatusCode辅助类发布到npm
本篇文章小编为大家介绍利用Node.js为Node.js生成HttpStatusCode辅助类并发布到npm,有需要的朋友可以参考一下2013-04-04JavaScript高级程序设计(第3版)学习笔记7 js函数(上)
如果说对象是房间,那么函数就是有魔幻效应的房间了。函数首先是对象,然后这个函数对象还具有很多魔幻功能2012-10-10javascript学习笔记(三) String 字符串类型介绍
javascript学习笔记之String 字符串类型介绍,这里介绍的是js字符串处理常用函数2012-06-06Web Inspector:关于在 Sublime Text 中调试Js的介绍
本篇文章小编将为大家介绍,Web Inspector:关于在 Sublime Text 中调试Js的介绍。需要的朋友可以参考一下2013-04-04
最新评论