javascript实现获取浏览器版本、操作系统类型
作者:bea
代码很简洁,功能很实用,这里就不多废话了,直接给大家奉上代码: /** * Created by Administrator on 15-1-12. */function BroswerUtil() {}BroswerUtil = { //检测浏览器版本 getBrowserVersion: function () { var agent = navigator.userAgent.toLowerCase(); var arr = []; var B
代码很简洁,功能很实用,这里就不多废话了,直接给大家奉上代码:
/**
* Created by Administrator on 15-1-12.
*/
function BroswerUtil() {
}
BroswerUtil = {
//检测浏览器版本
getBrowserVersion: function () {
var agent = navigator.userAgent.toLowerCase();
var arr = [];
var Browser = "";
var Bversion = "";
var verinNum = "";
//IE
if (agent.indexOf("msie") > 0) {
var regStr_ie = /msie [d.]+;/gi;
Browser = "IE";
Bversion = "" + agent.match(regStr_ie)
}
//firefox
else if (agent.indexOf("firefox") > 0) {
var regStr_ff = /firefox/[d.]+/gi;
Browser = "firefox";
Bversion = "" + agent.match(regStr_ff);
}
//Chrome
else if (agent.indexOf("chrome") > 0) {
var regStr_chrome = /chrome/[d.]+/gi;
Browser = "chrome";
Bversion = "" + agent.match(regStr_chrome);
}
//Safari
else if (agent.indexOf("safari") > 0 && agent.indexOf
("chrome") < 0) {
var regStr_saf = /version/[d.]+/gi;
Browser = "safari";
Bversion = "" + agent.match(regStr_saf);
}
//Opera
else if (agent.indexOf("opera") >= 0) {
var regStr_opera = /version/[d.]+/gi;
Browser = "opera";
Bversion = "" + agent.match(regStr_opera);
} else {
var browser = navigator.appName;
if (browser == "Netscape") {
var version = agent.split(";");
var trim_Version = version[7].replace(/[ ]/g,
"");
var rvStr = trim_Version.match(/
[d.]/g).toString();
var rv = rvStr.replace(/[,]/g, "");
Bversion = rv;
Browser = "IE"
}
}
verinNum = (Bversion + "").replace(/[^0-9.]/ig, "");
arr.push(Browser);
arr.push(verinNum);
return arr;
},
//检测是否是XX浏览器
WB: (function () {
var UserAgent = navigator.userAgent.toLowerCase();
return {
isIE6: /msie 6.0/.test(UserAgent), // IE6
isIE7: /msie 7.0/.test(UserAgent), // IE7
isIE8: /msie 8.0/.test(UserAgent), // IE8
isIE9: /msie 9.0/.test(UserAgent), // IE9
isIE10: /msie 10.0/.test(UserAgent), // IE10
isIE11: /msie 11.0/.test(UserAgent), // IE11
isLB: /lbbrowser/.test(UserAgent), // 猎豹浏览器
isUc: /ucweb/.test(UserAgent), // UC浏览器
is360: /360se/.test(UserAgent), // 360浏览器
isBaidu: /bidubrowser/.test(UserAgent), // 百度浏览器
isSougou: /metasr/.test(UserAgent), // 搜狗浏览器
isChrome: /chrome/.test(UserAgent.substr(-33, 6)), //
Chrome浏览器
isFirefox: /firefox/.test(UserAgent), // 火狐浏览器
isOpera: /opera/.test(UserAgent), // Opera浏览器
isSafire: /safari/.test(UserAgent) && !/chrome/.test
(UserAgent), // safire浏览器
isQQ: /qqbrowser/.test(UserAgent)//qq浏览器
};
})(),
//检测当前操作系统
CurrentSystem: (function () {
var system = {
win: false,
mac: false,
xll: false,
iphone: false,
ipoad: false,
ipad: false,
ios: false,
android: false,
nokiaN: false,
winMobile: false,
wii: false,
ps: false
};
var ua = navigator.userAgent;
// 检测平台
var p = navigator.platform;
system.win = p.indexOf('Win') == 0;
system.mac = p.indexOf('Mac') == 0;
system.xll = (p.indexOf('Xll') == 0 || 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;
case '6.2':
system.win = '8';
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 mobile
if (system.win == 'CE') {
system.winMobile = system.win;
} else if (system.win == 'Ph') {
if (/Windows Phone OS (d+.d)/i.test(ua)) {
system.win = 'Phone';
system.winMobile = parseFloat(RegExp['$1']);
}
}
// 检测IOS版本
if (system.mac && ua.indexOf('Mobile') > -1) {
if (/CPU (?:iPhone )?OS (d+_d+)/i.test(ua)) {
system.ios = parseFloat(RegExp['$1'].replace('_',
'.'));
} else {
system.ios = 2; // 不能真正检测出来,所以
只能猜测
}
}
// 检测Android版本
if (/Android (d+.d+)/i.test(ua)) {
system.android = parseFloat(RegExp['$1']);
}
// 游戏系统
system.wii = ua.indexOf('Wii') > -1;
system.ps = /PlayStation/i.test(ua);
return {
system: system
}
})()
}
以上就是这款javascript封装好的检测浏览器版本和操作系统类型的代码库,希望大家能够喜欢。
有用 | 无用
/**
* Created by Administrator on 15-1-12.
*/
function BroswerUtil() {
}
BroswerUtil = {
//检测浏览器版本
getBrowserVersion: function () {
var agent = navigator.userAgent.toLowerCase();
var arr = [];
var Browser = "";
var Bversion = "";
var verinNum = "";
//IE
if (agent.indexOf("msie") > 0) {
var regStr_ie = /msie [d.]+;/gi;
Browser = "IE";
Bversion = "" + agent.match(regStr_ie)
}
//firefox
else if (agent.indexOf("firefox") > 0) {
var regStr_ff = /firefox/[d.]+/gi;
Browser = "firefox";
Bversion = "" + agent.match(regStr_ff);
}
//Chrome
else if (agent.indexOf("chrome") > 0) {
var regStr_chrome = /chrome/[d.]+/gi;
Browser = "chrome";
Bversion = "" + agent.match(regStr_chrome);
}
//Safari
else if (agent.indexOf("safari") > 0 && agent.indexOf
("chrome") < 0) {
var regStr_saf = /version/[d.]+/gi;
Browser = "safari";
Bversion = "" + agent.match(regStr_saf);
}
//Opera
else if (agent.indexOf("opera") >= 0) {
var regStr_opera = /version/[d.]+/gi;
Browser = "opera";
Bversion = "" + agent.match(regStr_opera);
} else {
var browser = navigator.appName;
if (browser == "Netscape") {
var version = agent.split(";");
var trim_Version = version[7].replace(/[ ]/g,
"");
var rvStr = trim_Version.match(/
[d.]/g).toString();
var rv = rvStr.replace(/[,]/g, "");
Bversion = rv;
Browser = "IE"
}
}
verinNum = (Bversion + "").replace(/[^0-9.]/ig, "");
arr.push(Browser);
arr.push(verinNum);
return arr;
},
//检测是否是XX浏览器
WB: (function () {
var UserAgent = navigator.userAgent.toLowerCase();
return {
isIE6: /msie 6.0/.test(UserAgent), // IE6
isIE7: /msie 7.0/.test(UserAgent), // IE7
isIE8: /msie 8.0/.test(UserAgent), // IE8
isIE9: /msie 9.0/.test(UserAgent), // IE9
isIE10: /msie 10.0/.test(UserAgent), // IE10
isIE11: /msie 11.0/.test(UserAgent), // IE11
isLB: /lbbrowser/.test(UserAgent), // 猎豹浏览器
isUc: /ucweb/.test(UserAgent), // UC浏览器
is360: /360se/.test(UserAgent), // 360浏览器
isBaidu: /bidubrowser/.test(UserAgent), // 百度浏览器
isSougou: /metasr/.test(UserAgent), // 搜狗浏览器
isChrome: /chrome/.test(UserAgent.substr(-33, 6)), //
Chrome浏览器
isFirefox: /firefox/.test(UserAgent), // 火狐浏览器
isOpera: /opera/.test(UserAgent), // Opera浏览器
isSafire: /safari/.test(UserAgent) && !/chrome/.test
(UserAgent), // safire浏览器
isQQ: /qqbrowser/.test(UserAgent)//qq浏览器
};
})(),
//检测当前操作系统
CurrentSystem: (function () {
var system = {
win: false,
mac: false,
xll: false,
iphone: false,
ipoad: false,
ipad: false,
ios: false,
android: false,
nokiaN: false,
winMobile: false,
wii: false,
ps: false
};
var ua = navigator.userAgent;
// 检测平台
var p = navigator.platform;
system.win = p.indexOf('Win') == 0;
system.mac = p.indexOf('Mac') == 0;
system.xll = (p.indexOf('Xll') == 0 || 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;
case '6.2':
system.win = '8';
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 mobile
if (system.win == 'CE') {
system.winMobile = system.win;
} else if (system.win == 'Ph') {
if (/Windows Phone OS (d+.d)/i.test(ua)) {
system.win = 'Phone';
system.winMobile = parseFloat(RegExp['$1']);
}
}
// 检测IOS版本
if (system.mac && ua.indexOf('Mobile') > -1) {
if (/CPU (?:iPhone )?OS (d+_d+)/i.test(ua)) {
system.ios = parseFloat(RegExp['$1'].replace('_',
'.'));
} else {
system.ios = 2; // 不能真正检测出来,所以
只能猜测
}
}
// 检测Android版本
if (/Android (d+.d+)/i.test(ua)) {
system.android = parseFloat(RegExp['$1']);
}
// 游戏系统
system.wii = ua.indexOf('Wii') > -1;
system.ps = /PlayStation/i.test(ua);
return {
system: system
}
})()
}
以上就是这款javascript封装好的检测浏览器版本和操作系统类型的代码库,希望大家能够喜欢。
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- JS清除选择内容的方法
- IE中鼠标经过option触发mouseout的解决方法
- JS判断是否360安全浏览器极速内核的方法
- jQuery中$.each使用详解
- jQuery显示和隐藏 常用的状态判断方法
- 移动设备web开发首选框架:zeptojs介绍
- JSON格式的键盘编码对照表
- js的window.showModalDialog及window.open用法实例分析
- JQuery异步获取返回值中文乱码的解决方法
- AngularJS中的模块详解
- jquery结合CSS使用validate实现漂亮的验证
- 5个数组Array方法: indexOf、filter、forEach、map、reduce使用实例
- 推荐一个自己用的封装好的javascript插件
- js实现点击左右按钮轮播图片效果实例
- JavaScript中实现继承的三种方式和实例
- javascript面向对象程序设计(一)
- jquery调取json数据实现省市级联的方法
- JavaScript中实现单体模式分享
- angular简介和其特点介绍