• 浏览器设备判断


    浏览器设备判断

    一、定义

    var browser = {
        versions: function () {
            var u = navigator.userAgent, app = navigator.appVersion;
            return {
                trident: u.indexOf('Trident') > -1, //IE
                presto: u.indexOf('Presto') > -1, //opera
                webKit: u.indexOf('AppleWebKit') > -1, //webkit
                gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //firefox
                mobile: !!u.match(/AppleWebKit.*Mobile.*/), //mobile
                ios: !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/), //ios
                android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android or uc
                android43: function () {
                    var s = navigator.userAgent.substr(navigator.userAgent.indexOf('Android') + 8, 3);
                    console.log("version android " + s, parseFloat(s) < 4.4);
                    return parseFloat(s) < 4.4 ? true : false
                }(),
                iPhone: u.indexOf('iPhone') > -1, //iPhone QQHD
                iPad: u.indexOf('iPad') > -1, //iPad
                webApp: u.indexOf('Safari') == -1
            };
        }()
    };

    二、判断

    if(browser.versions.ios){
            //ios
        }else if(browser.versions.android){
            //android
        }else if(!browser.versions.mobile) {
            //mobile
            console.log(browser.versions.userAgent);
        }

     判断是否为移动设备:

     function isMobile(){
          if(/android/i.test(navigator.userAgent)){
            //document.write("This is Android'browser.");//这是Android平台下浏览器
            return true;
          }
          if(/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)){
            //document.write("This is iOS'browser.");//这是iOS平台下浏览器
            return true;
          }
          if(/Linux/i.test(navigator.userAgent)){
            //document.write("This is Linux'browser.");//这是Linux平台下浏览器
            return true;
          }
          if(/Linux/i.test(navigator.platform)){
            //document.write("This is Linux operating system.");//这是Linux操作系统平台
            return true;
          }
          if(/MicroMessenger/i.test(navigator.userAgent)){
            //document.write("This is MicroMessenger'browser.");//这是微信平台下浏览器
            return true;
          }
          return false;
        }

    js 判断移动设备、pc端、android、iPhone、是否为微信、微博、qq空间(QQ空间会与QQ浏览器重叠,即苹果浏览器中的QQ浏览器重叠,所以在QQ空间中不需要return)

    varbrowser = {
    
      versions: function () {
         var u = navigator.userAgent, app = navigator.appVersion;
         return {     //移动终端浏览器版本信息
           trident: u.indexOf('Trident') > -1, //IE内核
           presto: u.indexOf('Presto') > -1, //opera内核
           webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
           gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核
           mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端
           ios: !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
           android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或uc浏览器
           iPhone: u.indexOf('iPhone') > -1, //是否为iPhone或者QQHD浏览器
           iPad: u.indexOf('iPad') > -1, //是否iPad
           webApp: u.indexOf('Safari') == -1 //是否web应用程序,没有头部与底部
        };
      }(),
      language: (navigator.browserLanguage || navigator.language).toLowerCase()
    }            
    if (browser.versions.mobile) {//判断是否是移动设备打开。browser代码在下面
       var ua = navigator.userAgent.toLowerCase();//获取判断用的对象
       if (ua.match(/MicroMessenger/i) == "micromessenger") {
           //在微信中打开
       }
       if (ua.match(/WeiBo/i) == "weibo") {
           //在新浪微博客户端打开
       }
       if (ua.match(/QQ/i) == "qq") {
           //在QQ空间打开
       }
       if (browser.versions.ios) {
           //是否在IOS浏览器打开
       } 
       if(browser.versions.android){
           //是否在安卓浏览器打开
       }
    }else {
      //否则就是PC浏览器打开
    }
    

      

  • 相关阅读:
    Java异常处理和设计
    一次qps测试实践
    Alternate Task UVA
    Just Another Problem UVA
    Lattice Point or Not UVA
    Play with Floor and Ceil UVA
    Exploring Pyramids UVALive
    Cheerleaders UVA
    Triangle Counting UVA
    Square Numbers UVA
  • 原文地址:https://www.cnblogs.com/karila/p/6729639.html
Copyright © 2020-2023  润新知