zoukankan      html  css  js  c++  java
  • jQuery下通过$.browser来判断浏览器

    一、$.browser对象属性

    1、webkit:如果是webkit相关的浏览器,则为true.

    2、mozilla:如果是mozilla相关的浏览器,则为true.

     

    3、safari:如果是safari相关的浏览器,则为true.

     

    4、opera:如果是opera相关的浏览器,则为true.

    5、msie:如果是ie相关的浏览器,则为true.

    6、version:获取浏览器的版本号.

     

    二、使用方法:
    $.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判断浏览器的种类和版本. 


    三、如果我们要来判断当前浏览器是否是IE6应该如何来判断?
      $.browser.msie&&($.browser.version == "6.0")&&!$.support.style 
         同样jQuery判断浏览器是否为IE7 
      $.browser.msie&&($.browser.version == "7.0") 
    如果不考虑向后兼容性,又不想为了判断各浏览器类型而导入jQuery 
    判断IE最简单的方法是 

    代码如下:

    if(document.all){ 
    alert("IE6") 


    $.browser是通过正则表达式来匹配userAgent来判断浏览器版本和种类的.jquery1.3.2版本的文档中已经声明jquery.browser及jquery.browser.version建议弃用,可以使用jquery.support来代替 
    但是目前的情况来看,jquery.support并不好用,而且是非常的难用,我们还是老老实实的用$.browser来判断浏览器类型吧 
    如果是为了判断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的使用方法了

  • 相关阅读:
    面试题-酷家乐面试准备
    英语学习-第一次申请试译的小透明(未完待续)
    操作系统educative版本-笔记1
    周末日记-第一次相对正规的技术教学
    资料推荐-一个神奇的网站educative.io
    面试题-持续集成
    每天5分钟玩转容器技术-读书笔记-第六章
    每天5分钟玩转容器技术-读书笔记-第四章到第五章
    工作日记-文件柜驱动层开发总结
    DP套题练习1
  • 原文地址:https://www.cnblogs.com/couxiaozi1983/p/2389047.html
Copyright © 2011-2022 走看看