zoukankan      html  css  js  c++  java
  • 判断浏览器,还在用userAgent吗,你out了

    以下内容摘自http://www.cnblogs.com/rubylouvre/archive/2009/10/14/1583362.html

    //2010 4 16日更新
    ie678 = !+"v1" ;
    ie678 = !-[1,];//IE9预览版中失效
    ie678 ='v'=='v' ;
    ie678 = ('a~b'.split(/(~)/))[1] == "b"
    ie678 = 0.9.toFixed(0) == "0"
    IE8 = window.toStaticHTML
    IE9 = window.msPerformance
    ie = !!document.recalc
    ie = !!window.VBArray
    ie = !!window.ActiveXObject
    ie678 = 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_Media_in_Netscape
    netscape = !!window.GeckoActiveXObject
    gecko = !!window.netscape //包括firefox
    firefox = !!window.Components
    firefox = !!window.updateCommands
    firefox = !!window.sidebar
    safari = !!(navigator.vendor && navigator.vendor.match(/Apple/))
    safari = window.openDatabase && !window.chrome;
    chrome= !!(window.chrome && window.google)
    opera=!!window.opera ;
    //傲游2 3
    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 条件注释在
    ie = (function() {
    var v = 3, div = document.createElement('div');
    while (div.innerHTML = '<!--[if gt IE '+(++v)+']>1<![endif]-->', div.innerHTML);
    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
    var ua = navigator.userAgent;
    isAndroid = /Android/i.test(ua);
    isBlackBerry = /BlackBerry/i.test(ua)
    isWindowPhone = /IEMobile/i.test(ua)
    isIOS = /iPhone|iPad|iPod/i.test(ua)
    isMobile = isAndroid || isBlackBerry || isWindowPhone || isIOS

  • 相关阅读:
    JQuery实现Ajax应用
    访问本地json文件因跨域导致的问题
    python_控制台输出带颜色的文字方法
    查询数据量大时,你会选择关联表查询还是循环中依个查询? up
    自己动手写SQL字符串分解函数Split up
    关于Access数据库执行Update语句后,不报错,但影响行数总是返回0的问题...... up
    TCP和UDP的区别
    Linxu系统下怎么安装vim编辑器
    网络编程 委托
    学习POS的数据包分析
  • 原文地址:https://www.cnblogs.com/jamesldj/p/3343749.html
Copyright © 2011-2022 走看看