最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript實(shí)現(xiàn)獲取瀏覽器版本、操作系統(tǒng)類型

 更新時間:2015年01月29日 09:13:48   作者:一起走過的日子  
這篇文章主要給大家分享一段javascript實(shí)現(xiàn)獲取瀏覽器版本、操作系統(tǒng)類型的封裝好的代碼,使用非常方便,也很實(shí)用,推薦給大家。

代碼很簡潔,功能很實(shí)用,這里就不多廢話了,直接給大家奉上代碼:

/**
 * 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瀏覽器
    };
  })(),
  //檢測當(dāng)前操作系統(tǒng)
  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操作系統(tǒng)
    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'];
        }
      }
    }
    // 移動設(shè)備
    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']);
    }
    // 游戲系統(tǒng)
    system.wii = ua.indexOf('Wii') > -1;
    system.ps = /PlayStation/i.test(ua);
    return {
      system: system
    }
  })()
}

以上就是這款javascript封裝好的檢測瀏覽器版本和操作系統(tǒng)類型的代碼庫,希望大家能夠喜歡。

相關(guān)文章

  • js事件流、事件委托與事件階段實(shí)例詳解

    js事件流、事件委托與事件階段實(shí)例詳解

    事件委托應(yīng)用在很多開發(fā)場景之中,但是很多同學(xué)對委托的原理、特別是對JS原生實(shí)現(xiàn)委托不太了解,下面這篇文章主要給大家介紹了關(guān)于js事件流、事件委托與事件階段的相關(guān)資料,需要的朋友可以參考下
    2022-02-02
  • 判斷“命令按鈕”是否被鼠標(biāo)單擊詳解

    判斷“命令按鈕”是否被鼠標(biāo)單擊詳解

    在本篇文章里小編給各位分享的是關(guān)于判斷“命令按鈕”是否被鼠標(biāo)單擊的相關(guān)知識點(diǎn)內(nèi)容,有需要的朋友們參考下。
    2019-07-07
  • 原生js 實(shí)現(xiàn)表單驗(yàn)證功能

    原生js 實(shí)現(xiàn)表單驗(yàn)證功能

    這篇文章主要介紹了原生js如何實(shí)現(xiàn)表單驗(yàn)證功能,幫助大家更好的理解和使用JavaScript,感興趣的朋友可以了解下
    2021-02-02
  • 繪制微信小程序驗(yàn)證碼功能的實(shí)例代碼

    繪制微信小程序驗(yàn)證碼功能的實(shí)例代碼

    這篇文章主要介紹了繪制微信小程序驗(yàn)證碼功能的實(shí)例代碼,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • 基于JavaScript實(shí)現(xiàn)選項卡效果

    基于JavaScript實(shí)現(xiàn)選項卡效果

    這篇文章主要為大家詳細(xì)介紹了基于JavaScript實(shí)現(xiàn)選項卡效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • JS操作字符串轉(zhuǎn)換為數(shù)值并取整的代碼

    JS操作字符串轉(zhuǎn)換為數(shù)值并取整的代碼

    這篇文章主要介紹了JS操作字符串轉(zhuǎn)換為數(shù)值并取整的代碼,代碼比較短,需要的朋友可以參考下
    2014-01-01
  • JavaScript運(yùn)算符小結(jié)

    JavaScript運(yùn)算符小結(jié)

    本文主要給大家詳細(xì)總結(jié)了下javascript中的運(yùn)算符,包括常見的算數(shù)運(yùn)算符、比較運(yùn)算符和邏輯運(yùn)算符。十分的清晰,有需要的小伙伴可以參考下。
    2015-06-06
  • 微信小程序官方動態(tài)自定義底部tabBar的例子

    微信小程序官方動態(tài)自定義底部tabBar的例子

    這篇文章主要介紹了微信小程序官方動態(tài)自定義底部tabBar的例子,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • 淺談javascript的數(shù)據(jù)類型檢測

    淺談javascript的數(shù)據(jù)類型檢測

    剖析一下javascript的數(shù)據(jù)類型。這一次我們只簡單討論下javascript的數(shù)據(jù)類型檢測,繼續(xù)期望大家踴躍發(fā)表意見,尤其歡迎高手拍磚。
    2010-07-07
  • JavaScript中Promise的簡單使用及其原理詳解

    JavaScript中Promise的簡單使用及其原理詳解

    Promise是ES6最重要的特性之一,今天小編就來帶大家一起系統(tǒng)且細(xì)致的研究一下Promise的用法以及原理,感興趣的小伙伴可以學(xué)習(xí)一下哦
    2023-03-03

最新評論

徐州市| 辉南县| 基隆市| 安义县| 泸水县| 昂仁县| 新宁县| 孟津县| 揭阳市| 玉龙| 南宫市| 马尔康县| 东莞市| 商都县| 玉树县| 西林县| 滦平县| 玉山县| 瑞丽市| 海林市| 麻城市| 安泽县| 玉山县| 武义县| 广西| 德格县| 柳林县| 安福县| 弥渡县| 津南区| 古交市| 阿鲁科尔沁旗| 通道| 冀州市| 温州市| 洞头县| 綦江县| 道孚县| 东兰县| 胶州市| 双牌县|