javascript判定別ブラウザ

6578 ワード

他に方法がない以外は、navigator.userAgentを使ってブラウザを判定しません.第一次ブラウザ大戦の初期において、Netscapeは絶対的な統計的地位を占めていたので、大部分の人々は他のブラウザとの互換性を望まず、UAを検出することによって彼らのウェブサイトにNetscapeのみアクセスを許可させ、他のブラウザ(IEを含む)に自分のUAをNetscapeに変装させて、独善的なシナリオを通して、そこで、誰もが自分は他人だと主張する場面が現れ、最新のIE 9のUAであっても、
 
  //Mozilla/ 4.0 (compatible; MSIE 7.0 ; Windows NT 6.0 ; Trident/ 5.0 )//2010416         ie = !+"\v1";        ie = !-[1,];//IE9         ie ='\v'=='v';        ie = !!document.recalc        ie = !!window.VBArray        ie = !!window.ActiveXObject        ie = 0//@cc_on+1;        ie = !!window.createPopup;        ie = /*@cc_on!@*/!1;        ie = document.expando;//document.all opera firefox         ie = /\w/.test('\u0130') // abcd                  ie6= !"1"[0] // IE6 IE5         ie8= !!window.XDomainRequest;        ie9=  document.documentMode && document.documentMode === 9;        // , ,IE JS , IE 0        var ieVersion = eval("''+/*@cc_on"+" @_jscript_version@*/-0")*1        ie9= ieVersion === 5.9        ie8= ieVersion === 5.8        ie7= ieVersion === 5.7        ie6= ieVersion === 5.6        ie5= ieVersion === 5.5        //https://developer.mozilla.org/En/Windows_メディア Netscape        netscape = !!window.GeckoActiveXObject         gecko  = !!window.netscape // firefox        firefox = !!window.Components        firefox = !!window.updateCommands        safari = !!(navigator.vendor && navigator.vendor.match(/Apple/))        safari = window.openDatabase && !window.chrome;        chrome= !!(window.chrome && window.google)        opera=!!window.opera ;        // 23        maxthon = /maxthon/i.test(navigator.userAgent)        //360         is360se = /360se/i.test(navigator.userAgent)//2010.6.4       setTimeout(function(){//FF setTimeout 0          var isFF = !!arguments.length;          alert(isFF)        }, 0);  // IE 2010.10.1      ie = (function(undefined){        var v = 3, div = document.createElement('div');        while (        div.innerHTML = '<!--[if gt IE '+(++v)+']><i></i><![endif]-->',        div.getElementsByTagName('i')[0]);        return v> 4? v : undefined;      }());  // IE 2011.2.24       ie = (function() {          var v = 3, div = document.createElement('div'), a = div.all|| [];          while (div.innerHTML = '<!--[if gt IE '+(++v)+']><br><![endif]-->', a[0]);          return v > 4? v : !v;        }()); 
 
 
  // 2011.9.21 isIPhone = /iPhone/i.test(navigator.userAgent); isIPhone4= window.devicePixelRatio >= 2// ,pixel point device-pixel-ratio, 1,iPhone 4 2, Android 1.5//http://blog.webcreativepark.net/2011/01/25-173502.html isIPad = /iPad/i.test(navigator.userAgent); isAndroid = /android/i.test(navigator.userAgent); isIOS = isIPhone  || isIPad ; 
 
 
 
 
isMobile=isIOS𞓜isAndroid;