zoukankan      html  css  js  c++  java
  • jquery判断ie与使用ie来判断ie,推荐ie样式块

    用jquery来判断浏览器类型,如果只是仅仅为了判断浏览器的类型而使用该方法,那么不建议使用,只是在你已经使用了jquery才建议使用,因为没必要因为这么小的一个功能就加载那么大的类库吧
    Jquery中利用navigator.userAgent.indexOf来判断浏览器类型,并进行了一下处理,建议学习Jquery的朋友学习下,了解一下思路。 
    
    主要使用的方法:$.browser.['浏览器关键字'] 
    复制代码 代码如下:
    $(function() { 
    if($.browser.msie) { 
    alert("this is msie"); 
    } else if($.browser.safari) { 
    alert("this is safari!"); 
    } else if($.browser.mozilla) { 
    alert("this is mozilla!"); 
    } else if($.browser.opera) { 
    alert("this is opera"); 
    } else { 
    alert("i don't konw!"); 
    } 
    
    我们看下jQuery的源码: 
    复制代码 代码如下:
    var userAgent = navigator.userAgent.toLowerCase(); 
    // Figure out what browser is being used 
    jQuery.browser = { 
    version: (userAgent.match( /.+(?:rv|it|ra|ie)[/: ]([d.]+)/ ) || [])[1], 
    safari: /webkit/.test( userAgent ), 
    opera: /opera/.test( userAgent ), 
    msie: /msie/.test( userAgent ) && !/opera/.test( userAgent ), 
    mozilla: /mozilla/.test( userAgent ) && !/(compatible|webkit)/.test( userAgent ) 
    }; 
    
    Jquery 使用的是通过正则来匹配userAgent判断浏览器的种类和版本. 
    version---浏览器版本 
    msie----ie浏览器(Microsoft Internet Explorer) 
    mozilla-火狐浏览器 
    opera--opera浏览器 
    
    如果我们要来判断当前浏览器是否是IE6应该如何来判断? 
    
    复制代码 代码如下:
    if($.browser.msie&&($.browser.version == "6.0")&&!$.support.style){ 
    alert("ie6"); 
    } 
    
    同样Jquery判断浏览器是否为IE7 
    复制代码 代码如下:
    if($.browser.msie&&($.browser.version == "7.0")){ 
    alert("ie7"); 
    } 
    
    如果不想使用Jquery,稍为修改下代码就可以为自己所用Js代码: 
    复制代码 代码如下:
    var userAgent = navigator.userAgent.toLowerCase(); 
    browser={ 
    version: (userAgent.match( /.+(?:rv|it|ra|ie)[/: ]([d.]+)/ ) || [0,'0'])[1], 
    safari: /webkit/.test( userAgent ), 
    opera: /opera/.test( userAgent ), 
    msie: /msie/.test( userAgent ) && !/opera/.test( userAgent ), 
    mozilla: /mozilla/.test( userAgent ) && !/(compatible|webkit)/.test( userAgent ) 
    } 
    
    调用的时候和jquery一样,只不过把$符号取掉就行了 
    
    如果是为了判断IE的版本我还是推荐用IE的条件表达式来书写JS 
    复制代码 代码如下:
    <!--[if IE]> 
    <script type="text/javascript"> 
    alert("ie"); 
    </script> 
    <![endif]--> 
    <!--[if IE 6]> 
    <script type="text/javascript"> 
    alert("ie6"); 
    </script> 
    <![endif]--> 
    <!--[if IE 7]> 
    <script type="text/javascript"> 
    alert("ie7"); 
    </script> 
    <![endif]--> 
    
    这个比我们手动通过$.browser来判断IE版本更精准,也不用去记jquery的browser的使用方法了 
  • 相关阅读:
    UNIX网络编程——Socket通信原理和实践
    UNIX环境高级编程——单实例的守护进程
    UNIX环境高级编程——初始化一个守护进程
    UNIX环境高级编程——创建孤儿进程
    UNIX环境高级编程——实现uid to name
    CentOS7中使用yum安装Nginx的方法
    centos7配置IP地址
    关于Dubbo的原理以及详细配置
    关于Java大数操作(BigInteger、BigDecimal)
    关于JSON 与 对象 、集合之间的转换
  • 原文地址:https://www.cnblogs.com/hualiu0/p/4553827.html
Copyright © 2011-2022 走看看