106 浏览器判断 正则的妙用

本文详细解析了一段用于检测浏览器信息的JavaScript代码,包括如何获取浏览器名称及版本号,并通过正则表达式匹配来识别不同的浏览器类型。对于IE、Firefox、Chrome、Opera、Safari等常见浏览器,代码提供了相应的检测逻辑,确保了兼容性和准确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



//浏览器检测
(function(){
    window.sys={};
    var ua=navigator.userAgent.toLowerCase();//获取炉冷却信息字符串
    var s;//浏览器信息数组,浏览器名称+版本号
    //document.write(ua);//不同浏览器将输出一下浏览器信息
   /*
    document.write(ua);//不同浏览器将输出一下浏览器信息
   * IE:mozilla/5.0 (compatible; msie 9.0; windows nt 6.1; trident/5.0; slcc2; .net clr 2.0.50727; .net clr 3.5.30729; .net clr 3.0.30729; .net4.0c; .net4.0e)
   *fixfox:mozilla/5.0 (windows nt 6.1; rv:36.0) gecko/20100101 firefox/36.0
   *chrome:mozilla/5.0 (windows nt 6.1) applewebkit/537.36 (khtml, like gecko) chrome/42.0.2311.135 safari/537.36
   *safari:mozilla/5.0 (windows nt 6.1) applewebkit/534.57.2 (khtml, like gecko) version/5.1.7 safari/534.57.2
   *opara:mozilla/5.0 (windows nt 6.1) applewebkit/537.36 (khtml, like gecko) chrome/41.0.2272.89 safari/537.36 opr/28.0.1750.48 (edition baidu)   *很怪异版本号在最后面28.0.1750.48**
   * */
  /*
    IE:alert(ua.match(/msie ([\d.]+)/));//不要漏掉了空格,输出msie 9.0,9.0       浏览器,版本号 版本号
    Fixfox:alert(ua.match(/firefox\/([\d.]+)/))//firefox/36.0
   chrome:alert(ua.match(/chrome\/([\d.]+)/)); //chrome/42.0.2311.135
   pera:alert(ua.match(/opera\/.*version\/([\d.]+)/));//欧鹏的挂掉了,明天看看什么情况
   safari: document.write(ua.match(/version\/([\d.]+).*safari/)) ;//version/5.1.7 safari,5.1.7
*/
  /*  if((/msie ([\d.]+)/).test(ua))//如果存在,IE
    {
        s=ua.match(/msie ([\d.]+)/);
        sys.ie=s[1];//9.0
    }
    if((/firefox\/([\d.]+)/).test(ua))//如果存在,firefox
    {
        s=ua.match(/firefox\/([\d.]+)/);
        sys.ie=s[1];//36.0
    }
    if((/chrome\/([\d.]+)/).test(ua))//如果存在,chrome
    {
        s=ua.match(/chrome\/([\d.]+)/);
        sys.ie=s[1];//42.0.2311.135
    }
    if((/version\/([\d.]+).*safari/).test(ua))//如果存在,safari
    {
        s=ua.match(/version\/([\d.]+).*safari/);
        sys.ie=s[1];//5.1.7
    }
    alert(sys.ie);//输出版本号
   */
    //多层级三目
    (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\/.*version\/([\d.]+)/)) ? sys.opera = s[1] :
                    (s = ua.match(/version\/([\d.]+).*safari/)) ? sys.safari = s[1] : 0;
    alert(sys.chrome);


})();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陆康永

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值