登录  /  注册
首页 > web前端 > js教程 > 正文
IE11中navigator.userAgent变化的实例代码
零下一度
发布: 2017-06-30 10:15:36
原创
978人浏览过

在原来判断浏览器是否是ie时,我们可以根据navigator.userAgent中时候有MSIE,但是IE11进行变革,userAgent中不在包含MSIE字段,

在实际项目中,入到类似的在控制台报错问题,就是在进行校验浏览器型号时,具体方法如下:

    function getBrowserInfo(){

      var Sys = {};

      var ua = navigator.userAgent.toLowersCase();

      var re = /(msie I firefox | chrome | opera | version).*?([\d.]+)/;

      var m = ua.match(re);

      Sys.browser = m[1].replace(/version/,"'safari'");

      Sys.ver = m[2];

      return;

    }

    根据此方法,就可以获取到Sys里面有具体的浏览器信息了,可以直接调用此方法进行比较即可;

    但是生产环境突然无法登陆,用户反馈是利用IE11进行操作的,所以直接用IE11进行测试,具体报错如下:

    【 SCRIPT5007: 无法获取未定义或null引用的属性“1” 】

     根据报错显示位置,定位在正则匹配后无法获取到m;

    经过解决,ie11浏览器navigator.userAgent改变,具体变为:

    "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C;     .NET4.0E; Shuame; rv:11.0) like Gecko";

     所以更换正则判断:var re = /(msie I firefox | chrome | opera | version | rv:).*?([\d.]+)/;

    这样问题就解决了,ie11兼容性得到了很大改善,还有很多改善,未完待续。。。。。。。。。。。。。。。。。。。

以上就是IE11中navigator.userAgent变化的实例代码的详细内容,更多请关注php中文网其它相关文章!

相关标签:
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 技术文章
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2023 //m.sbmmt.com/ All Rights Reserved | 苏州跃动光标网络科技有限公司 | 苏ICP备2020058653号-1

 | 本站CDN由 数掘科技 提供

登录PHP中文网,和优秀的人一起学习!
全站2000+教程免费学