ua.js

来自「视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.」· JavaScript 代码 · 共 112 行

JS
112
字号
/*ua.js revision 0.200 2001-12-03Contributor(s): Bob Clary, Netscape Communications, Copyright 2001Netscape grants you a royalty free license to use, modify and distribute this software provided that this copyright notice appears on all copies.  This software is provided "AS IS," without a warranty of any kind.*/function xbDetectBrowser(){  var oldOnError = window.onerror;  var element = null;  window.onerror = null;    // work around bug in xpcdom Mozilla 0.9.1  window.saveNavigator = window.navigator;  navigator.OS    = '';  navigator.version  = parseFloat(navigator.appVersion);  navigator.org    = '';  navigator.family  = '';  var platform;  if (typeof(window.navigator.platform) != 'undefined')  {    platform = window.navigator.platform.toLowerCase();    if (platform.indexOf('win') != -1)      navigator.OS = 'win';    else if (platform.indexOf('mac') != -1)      navigator.OS = 'mac';    else if (platform.indexOf('unix') != -1 || platform.indexOf('linux') != -1 || platform.indexOf('sun') != -1)      navigator.OS = 'nix';  }  var i = 0;  var ua = window.navigator.userAgent.toLowerCase();  if (ua.indexOf('opera') != -1)  {    i = ua.indexOf('opera');    navigator.family  = 'opera';    navigator.org    = 'opera';    navigator.version  = parseFloat('0' + ua.substr(i+6), 10);  }  else if ((i = ua.indexOf('msie')) != -1)  {    navigator.org    = 'microsoft';    navigator.version  = parseFloat('0' + ua.substr(i+5), 10);        if (navigator.version < 4)      navigator.family = 'ie3';    else      navigator.family = 'ie4'  }  else if (ua.indexOf('gecko') != -1)  {    navigator.family = 'gecko';    var rvStart = navigator.userAgent.indexOf('rv:') + 3;    var rvEnd = navigator.userAgent.indexOf(')', rvStart);    var rv = navigator.userAgent.substring(rvStart, rvEnd);    var decIndex = rv.indexOf('.');    if (decIndex != -1)    {      rv = rv.replace(/\./g, '')      rv = rv.substring(0, decIndex-1) + '.' + rv.substr(decIndex)    }    navigator.version = parseFloat(rv);    if (ua.indexOf('netscape') != -1)      navigator.org = 'netscape';    else if (ua.indexOf('compuserve') != -1)      navigator.org = 'compuserve';    else      navigator.org = 'mozilla';  }  else if ((ua.indexOf('mozilla') !=-1) && (ua.indexOf('spoofer')==-1) && (ua.indexOf('compatible') == -1) && (ua.indexOf('opera')==-1)&& (ua.indexOf('webtv')==-1) && (ua.indexOf('hotjava')==-1))  {    var is_major = parseFloat(navigator.appVersion);        if (is_major < 4)      navigator.version = is_major;    else    {      i = ua.lastIndexOf('/')      navigator.version = parseFloat('0' + ua.substr(i+1), 10);    }    navigator.org = 'netscape';    navigator.family = 'nn' + parseInt(navigator.appVersion);  }  else if ((i = ua.indexOf('aol')) != -1 )  {    // aol    navigator.family  = 'aol';    navigator.org    = 'aol';    navigator.version  = parseFloat('0' + ua.substr(i+4), 10);  }  else if ((i = ua.indexOf('hotjava')) != -1 )  {    // hotjava    navigator.family  = 'hotjava';    navigator.org    = 'sun';    navigator.version  = parseFloat(navigator.appVersion);  }  window.onerror = oldOnError;}xbDetectBrowser();

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?