浏览器检测JS代码(兼容目前各大主流浏览器)

本文实例介绍了JS代码实现浏览器检测,分享给大家供大家参考,具体内容如下

rush:js;"> var browserMatch = { init: function () { this.browser = this.getbrowser().browser || "An UnkNown browser"; this.version = this.getbrowser().version || "An UnkNown Version"; this.OS = this.getoS() || "An UnkNown OS"; },getoS:function(){ if(navigator.platform.indexOf("Win")!= -1) return "Windows"; if(navigator.platform.indexOf("Mac")!= -1) return "Mac"; if(navigator.platform.indexOf("Linux")!= -1) return "Linux"; if(navigator.userAgent.indexOf("iPhone")!= -1) return "iPhone/iPod"; },getbrowser:function () { var rMsie = /(msie\s|trident\/7)([\w\.]+)/; var rTrident = /(trident)\/([\w.]+)/; var rFirefox = /(firefox)\/([\w.]+)/; var rOpera = /(opera).+version\/([\w.]+)/; var rNewOpera = /(opr)\/(.+)/; var rChrome = /(chrome)\/([\w.]+)/; var rSafari = /version\/([\w.]+).*(safari)/; var ua = navigator.userAgent.toLowerCase(); var matchBS,matchBS2; matchBS = rMsie.exec(ua); if (matchBS != null) { matchBS2 = rTrident.exec(ua); if (matchBS2 != null){ switch (matchBS2[2]){ case "4.0": return { browser : "IE",version : "8" };break; case "5.0": return { browser : "IE",version : "9" };break; case "6.0": return { browser : "IE",version : "10" };break; case "7.0": return { browser : "IE",version : "11" };break; default:return { browser : "IE",version : "Undefined" }; } }else{ return {browser : "IE",version : matchBS[2] || "0" }; } } matchBS = rFirefox.exec(ua); if ((matchBS != null)&&(!(window.attachEvent))&&(!(window.chrome))&&(!(window.opera))) { return { browser : matchBS[1] || "",version : matchBS[2] || "0" }; } matchBS = rOpera.exec(ua); if ((matchBS != null)&&(!(window.attachEvent))) { return { browser : matchBS[1] || "",version : matchBS[2] || "0" }; } matchBS = rChrome.exec(ua); if ((matchBS != null)&&(!!(window.chrome))&&(!(window.attachEvent))) { matchBS2 = rNewOpera.exec(ua); if(matchBS2 == null){ return { browser : matchBS[1] || "",version : matchBS[2] || "0" }; }else{ return { browser : "Opera",version : matchBS2[2] || "0" }; } } matchBS = rSafari.exec(ua); if ((matchBS != null)&&(!(window.attachEvent))&&(!(window.chrome))&&(!(window.opera))) { return { browser : matchBS[2] || "",version : matchBS[1] || "0" }; } } }; browserMatch.init();

调用方法:(首先得引入js文件,大家应该都懂的)

获取浏览器名:

browserMatch.browser;

获取浏览器版本:

browserMatch.version;

获取所处操作系统:

browserMatch.OS;

以上就是本文的全部内容,希望对大家的学习有所帮助。

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...