AutoCAD 3DMAX C语言 Pro/E UG JAVA编程 PHP编程 Maya动画 Matlab应用 Android
Photoshop Word Excel flash VB编程 VC编程 Coreldraw SolidWorks A Designer Unity3D
 首页 > JavaScript

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

51自学网 http://www.wanshiok.com
JS,浏览器,检测

本文实例介绍了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;

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


JS,浏览器,检测  
上一篇:JS中Eval解析JSON字符串的一个小问题  下一篇:gameboy网页闯关游戏(riddle webgame)--仿微信聊天的前端页面设计和难点