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;

    }

  • 相关阅读:
    CSS: 三栏布局
    CSS: 实现两栏布局,左边固定,右边自适应的4种方法
    css清除浮动
    浏览器解析时间线
    @Valid解决无法校验List问题
    Docker+Jenkins+Git+Maven实现Springboot项目自动化部署
    Git安装(CentOS)
    Jenkins安装
    Docker安装(Centos)
    Maven安装(Linux)
  • 原文地址:https://www.cnblogs.com/car1900/p/5871041.html
Copyright © 2011-2022 走看看