Method for js to intelligently obtain browser version UA information

  • 2021-07-09 06:58:37
  • OfStack

Method for js to intelligently obtain browser version UA information

How to Obtain UA (user Agent) User Agent with js


<!DOCtype html>
<html>
<head>
	<title></title>
</head>
<body onload="whatBrowser()">
	<script> 
function whatBrowser() {  
document.Browser.Name.value=navigator.appName;  
document.Browser.Version.value=navigator.appVersion;  
document.Browser.Code.value=navigator.appCodeName;  
document.Browser.Agent.value=navigator.userAgent;  
}  
</script> 
<table> 
<form name="Browser"> 
<tr> 
<td>  Browser name : </td> 
<td> <input type="txt" name="Name" size="110%"></td> 
</tr> 
<tr> 
<td>  Version number :</td> 
<td> <input type="txt" name="Version" size="110%"></td> 
</tr> 
<tr> 
<td>  Code name : </td> 
<td> <input type="txt" name="Code" size="110%"></td> 
</tr> 
<tr> 
<td>  User Agent Identity :</td> 
<td> <input type="txt" name="Agent" size="110%"></td> 
</tr> 
</form> 
</table> 
</body>
</html>

Functional code


/*
*  Intelligent access to browser version information 
*
*/
var browser={
  versions:function(){
  var u = navigator.userAgent, app = navigator.appVersion;
  return {// Mobile terminal browser version information 
   trident: u.indexOf('Trident') > -1, //IE Kernel 
   presto: u.indexOf('Presto') > -1, //opera Kernel 
   webKit: u.indexOf('AppleWebKit') > -1, // Apple, Google Kernel 
   gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, // Firefox kernel 
   mobile: !!u.match(/AppleWebKit.*Mobile.*/)||!!u.match(/AppleWebKit/), // Whether it is a mobile terminal 
   ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios Terminal 
   android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android Terminal or uc Browser 
   iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, // Whether it is iPhone Or QQHD Browser 
   iPad: u.indexOf('iPad') > -1, // Whether or not iPad
   webApp: u.indexOf('Safari') == -1 // Whether or not web Should program, no head and bottom 
  };
  }(),
  language:(navigator.browserLanguage || navigator.language).toLowerCase()
}

Code supporting mobile judgment


<script>
 
  var browser = { 
    versions: function () { 
      var u = navigator.userAgent, app = navigator.appVersion; 
      return {     // Mobile terminal browser version information  
        trident: u.indexOf('Trident') > -1, //IE Kernel  
        presto: u.indexOf('Presto') > -1, //opera Kernel  
        webKit: u.indexOf('AppleWebKit') > -1, // Apple, Google Kernel  
        gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, // Firefox kernel  
        mobile: !!u.match(/AppleWebKit.*Mobile.*/), // Whether it is a mobile terminal  
        ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios Terminal  
        android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android Terminal or uc Browser  
        iPhone: u.indexOf('iPhone') > -1, // Whether it is iPhone Or QQHD Browser  
        iPad: u.indexOf('iPad') > -1, // Whether or not iPad 
        webApp: u.indexOf('Safari') == -1 // Whether or not web Should program, no head and bottom  
      }; 
    }(), 
    language: (navigator.browserLanguage || navigator.language).toLowerCase() 
  }
 
 
  if (browser.versions.mobile) {// It is determined whether the mobile device is turned on. browser The code is below  
      var ua = navigator.userAgent.toLowerCase();// Get the object for judgment  
      var u = navigator.userAgent; 
      var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android Terminal  
      var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios Terminal  
      if (ua.match(/MicroMessenger/i) == "micromessenger") { 
      // Open on WeChat  
      }
 
    if (ua.match(/WeiBo/i) == "weibo" && isiOS) { 
      //alert(" I was opened on Weibo IOS");
      var flag;
      document.addEventListener('touchmove', function (event) {      // Listen for Scroll Events 
        if(flag==1){                                                          // It is executed when judging that the mask is displayed, and scrolling is prohibited 
          event.preventDefault();                                       // The most critical 1 Sentence, prohibit browser default behavior 
        }
      })
      $(".download-button,#headermenudownlink,#appshareheaderdownlink,#appsharesayhidownlink,#appsharevslogodownlink,#appsharevsdownlink").bind("click",function () {
        flag = 1;
        //alert('ios Download ');
        $("#shade-father").css({"display":"block","background-color":"rgba(0,0,0,0.4)"});
        //$("body").css("paddingTop","2.3rem");
        $("#shade-child").css("height","4rem");
      });
      $('#shade-father').click(function (){
        flag = 0;
        $("#shade-father").css({"display":"none","background-color":"rgba(0,0,0,0)"});
        $("#shade-child").css("height","0");
        //$("body").css("paddingTop","0");
      });
 
    }
 
  if (ua.match(/WeiBo/i) == "weibo" && isAndroid) {
 
 
  }
 
  if (ua.match(/QQ/i) == "qq") {
 
    // In QQ Space opening 
 
  }
 
  if (browser.versions.ios) {
 
    // Whether it is in IOS Browser opens 
 
  }
 
  if(browser.versions.android){
 
    // Is it open in Android browser 
 
  }
 
  } else {
 
    // Otherwise it is PC Browser opens 
 
  }
</script>

Related articles: