zoukankan      html  css  js  c++  java
  • js分辨浏览器类别和版本

    function BrowserInfo() {

      var ua = navigator.userAgent.toLowerCase();

      var Sys = {};

      var s;

      (s = ua.match(/msie ([d.]+)/)) ? Sys.ie = s[1] : (s = ua

          .match(/Trident/(d+)/i)) ? Sys.ie11 = s[1] : (s = ua

          .match(/edge.([d.]+)/)) ? Sys.edge = s[1] : (s = ua

          .match(/opera.([d.]+)/)) ? Sys.opera = s[1] : (s = ua

          .match(/opr.([d.]+)/)) ? Sys.opera = s[1] : (s = ua

          .match(/firefox/([d.]+)/)) ? Sys.firefox = s[1] : (s = ua

          .match(/chrome/([d.]+)/)) ? Sys.chrome = s[1] : (s = ua

          .match(/version/([d.]+).*safari/)) ? Sys.safari = s[1] : 0;

      var mBrowserInfo = {};

      if (Sys.ie) {

        mBrowserInfo.name = "IE";

        mBrowserInfo.version =  parseInt(Sys.ie);

      } else if (Sys.ie11) {

        mBrowserInfo.name = "IE";

        mBrowserInfo.version = 11;

      } else if (Sys.firefox) {

        mBrowserInfo.name = "Firefox";

        mBrowserInfo.version = Sys.firefox;

      } else if (Sys.chrome) {

        mBrowserInfo.name = "Chrome";

        mBrowserInfo.version = Sys.chrome;

      } else if (Sys.opera) {

        mBrowserInfo.name = "Opera";

        mBrowserInfo.version = Sys.opera;

      } else if (Sys.safari) {

        mBrowserInfo.name = "Safari";

        mBrowserInfo.version = Sys.safari;

      } else if (Sys.edge) {

        mBrowserInfo.name = "Edge";

        mBrowserInfo.version = Sys.edge;

      } else {

        //默认Chrome

        mBrowserInfo.name = "Chrome";

        mBrowserInfo.version = 0;

      }

      return  mBrowserInfo;

    }

  • 相关阅读:
    JS常见错误和分析
    angularjs 笔记(1) -- 引导
    各大浏览器hack
    AngularJS 配置和运行phonecat错误
    npm start 作用
    $.prop()和$.attr() 区别用法
    HDU 1251 统计难题 (Tire树)
    Luogu P3370 【模板】字符串哈希
    Luogu P3385 【模板】负环
    LuoguP1563 玩具谜题
  • 原文地址:https://www.cnblogs.com/car1900/p/5871041.html
Copyright © 2011-2022 走看看