js 判断浏览器和ie版本号 收集

function testB () {
    // body...
var isOpera = !!window.opera ||!!window.opr|| navigator.userAgent.indexOf(' OPR/') >= 0;
    // Opera 8.0+ (UA detection to detect Blink/v8-powered Opera)
var isFirefox = typeof InstallTrigger !== 'undefined';   // Firefox 1.0+
var isSafari = Object.prototype.toString.call(window.HTMLElement).indexOf('Constructor') > 0;
//var isSafari =/constructor/i.test(window.HTMLElement)
    // At least Safari 3+: "[object HTMLElementConstructor]"
    
var isChrome = !!window.chrome && !isOpera;              // Chrome 1+
var isIE = /*@cc_on!@*/false || !!document.documentMode;   // At least IE6

    console.log("是否是ie:"+  isIE);
    console.log("是否是chrome:"+  isChrome);
    console.log("是否是Firefox:"+  isFirefox);
    console.log("是否是opera:"+ isOpera);
    console.log("是否是safari:"+isSafari);
    if(isIE){
        var verIEtrue="";
        ///
        verIEtrue = (function(){
    // for-loop saves characters over while
    for( var v = 3,
             // b just as good as a div with 2 fewer characters
             el = document.createElement('b'),
             // el.all instead of el.getElementsByTagName('i')
             // empty array as loop breaker (and exception-avoider) for non-IE and IE10+
             all = el.all || [];
         // i tag not well-formed since we know that IE5-IE9 won't mind
         el.innerHTML = '<!--[if gt IE ' + (++v) + ']><i><![endif]-->',
         all[0];
       );
    // instead of undefined, returns the documentMode for IE10+ compatibility
    // non-IE will still get undefined as before
    return v > 4 ? v : document.documentMode;
}() );
        ///
        console.log("ie的版本号:"+  verIEtrue);
    }


}

testB ();

 

test
上一篇:聚焦实战,架构升级!


下一篇:jQuery学习笔记之DOM操作、事件绑定(2)