zoukankan      html  css  js  c++  java
  • 第一百四十节,JavaScript,封装库--浏览器检测

    JavaScript,封装库--浏览器检测

    在函数库编写一个,浏览器检测对象

    /** sys浏览器检测对象,对象下有两个属性,liu_lan_qi属性和xi_tong属性
     * liu_lan_qi属性,检测浏览器名称和版本号,如:alert(sys.liu_lan_qi);
     * xi_tong属性,检测浏览器运行环境,如:alert(sys.xi_tong);
     **/
    (function () {                       //闭包,自我执行
        window.sys = {};                  //全局变量对象,保存浏览器信息
        var ua = navigator.userAgent.toLowerCase();           //获取浏览器信息,并转化成小写
        var s = [];                                           //浏览器信息数组
        /**判断IE浏览器**/
        if ((/msie ([d.]+)/).test(ua)) {                      //IE10以下判断字段为:msie x版本号
            s = ua.match(/msie ([d.]+)/);                    //如果有获取到msie x版本号返回数组
            sys.liu_lan_qi = '浏览器为IE:' + s[1];            //向sys对象添加liu_lan_qi属性,属性值等于获取到的数组第二个元素
        } else if ((/trident/).test(ua)) {                      //ie10以上判断字段为:trident
            s = ua.match(/rv:([d.]+)/);                      //如果有获取到trident字段返回数组
            sys.liu_lan_qi = '浏览器为IE:' + s[1];
        }
        /**判断火狐浏览器**/
        if ((/firefox/([d.]+)/).test(ua)) {                  //火狐判断字段为:firefox
            s = ua.match(/firefox/([d.]+)/);
            sys.liu_lan_qi = '浏览器为firefox:' + s[1];
        }
        /**判断谷歌浏览器**/
        if ((/chrome/([d.]+)/).test(ua)) {                    //谷歌判断字段为:chrome
            s = ua.match(/chrome/([d.]+)/);
            sys.liu_lan_qi = '浏览器为chrome:' + s[1];
        }
        /**判断Opera浏览器**/
        if ((/opera/.*version/([d.]+)/).test(ua)) {         //谷歌判断字段为:opera 与 version
            s = ua.match(/opera/.*version/([d.]+)/);
            sys.liu_lan_qi = '浏览器为Opera:' + s[1];
        }
        /**判断Opera浏览器**/
        if ((/version/([d.]+).*safari/).test(ua)) {         //谷歌判断字段为:version 与 safari
            s = ua.match(/version/([d.]+).*safari/);
            sys.liu_lan_qi = '浏览器为Opera:' + s[1];
        }
        /**判断系统**/
        if (Boolean(navigator.platform)) {
            sys.xi_tong = '环境系统为:' + navigator.platform;
        } else {
            alert("无法检测到环境系统")
        }
    })();

    前台js代码

        alert(sys.liu_lan_qi);
        alert(sys.xi_tong);
  • 相关阅读:
    Python基础:条件判断与循环的两个要点
    oozie note
    Dynamics CRM2013 Server2012R2下IFD部署遇到There is already a listener on IP endpoint的解决方法
    监控系统的多协议直播(RTSP RTMP HTTP Live Streaming)
    易迅,生的霸气,死的窝囊
    js中的splice方法和slice方法简单总结
    JAVA虚拟机的安装以及JAVA的环境配置
    JS函数种类详解
    IDEA多线程调试设置
    Java中的HashMap源码记录以及并发环境的几个问题
  • 原文地址:https://www.cnblogs.com/adc8868/p/6341539.html
Copyright © 2011-2022 走看看