zoukankan      html  css  js  c++  java
  • js判断浏览器版本和类型

    方法一:
    对浏览器类型的判断和版本的判断可以合为一体地进行;
    通过分析浏览器的userAgent属性来判断;

    示例:
    IE的userAgent如下:
    Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0);
    Firefox userAgent如下:
    Mozilla/5.0 (Windows; U; Windows NT 5.2) Gecko/2008070208 Firefox/3.0.1

    toLowerCase:用于转为小写字母;
    match(regExp),使用指定的正则表达式搜索字符串,方法返回一个数组,记录了在字符串中匹配正则表达式的位置;
    match()以正则表达式为参数,exec()以字符串为参数;
    此方法:采用了“... ? ... : ...”这样的判断表达式来精简代码。判断条件是一条赋值语句,既完成正则表达式的匹配及结果复制,又直接作为条件判断。而随后的版本信息只需从前面的匹配结果中提取即可,这是非常高效的代码。

    <script type="text/javascript">
    var Sys = {};
            var ua = navigator.userAgent.toLowerCase();
            var s;
             (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :
             (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :
             (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] :
             (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] :
             (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;
            //以下进行测试
            if (Sys.ie) document.write('IE: ' + Sys.ie);
            if (Sys.firefox) document.write('Firefox: ' + Sys.firefox);
            if (Sys.chrome) document.write('Chrome: ' + Sys.chrome);
            if (Sys.opera) document.write('Opera: ' + Sys.opera);
            if (Sys.safari) document.write('Safari: ' + Sys.safari);
    </script>
    

    方法二:
    通过运用indexOf()方法来判断,该方法返回一个整数值,指出String对象内字符串的开始位置,如果没有找到字符串,则返回-1,在这里>0 表示找到匹配的字符串;

    可将代码分别复制到xhtml文档的head标签内进行测试; 

    <script language="JavaScript"> 
        <!-- 
    function getOs() 
    { 
        var OsObject = ""; 
       if(navigator.userAgent.indexOf("MSIE")>0) { 
          return "IE"; 
       } 
       if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){ 
            return "Firefox"; 
       } 
       if(isSafari=navigator.userAgent.indexOf("Safari")>0) { 
            return "Safari"; 
       } 
       if(isCamino=navigator.userAgent.indexOf("Camino")>0){ 
            return "Camino"; 
       } 
       if(isMozilla=navigator.userAgent.indexOf("Gecko/")>0){ 
            return "Gecko"; 
       }
    } 
    alert("您的浏览器类型为:"+getOs()); 
        --> 
    </script> 
    
  • 相关阅读:
    循环神经网络
    相似度计算(余弦距离/欧式距离)
    最常见Linux操作
    注意力机制总结
    随机打乱数组算法、蓄水池算法
    6.1 数据结构---树(遍历)
    Node.js调用C/C++
    linux中nmcli命令详解
    stylus入门使用方法
    webpack CommonsChunkPlugin详细教程
  • 原文地址:https://www.cnblogs.com/fengfan/p/1749193.html
Copyright © 2011-2022 走看看