微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JS如何区分微信浏览器、QQ浏览器和QQ内置浏览器,解决 ios 无法判断是否为qq浏览器环境的问题 !!!

原理

通过不同移动端的ua弹窗 获取user-agent 参数包含的信息,进行判断浏览器类型

在Android上

  • QQ内置环境的ua中有关键字 MQQbrowser, 并且后面包含一个【空白符+QQ】字符;QQ浏览器仅有【MQQbrowser】
    因此在Android上区分,需要用正则判断ua中包含MQQbrowser,并且剔除【MQQbrowser】之后包含【空白符+QQ】,则是QQ内置浏览器,
  • QQ浏览器:ua中包含MQQbrowser但是不包含QQ

在ios上

  • QQ内置浏览器: ua包含一个空格加QQ,但是不包含MQQbrowser
  • QQ浏览器: ua包含MQQbrowser但是不包含单独的QQ

兼容所有ios 安卓设备的判断

//微信浏览器
window.$fromWechat = navigator.userAgent.toLocaleLowerCase().indexOf("micromessenger") > -1;
//QQ浏览器 (MQQbrowser用于判断 安卓设备;QQTheme用于判断 ios设备)

window.$fromQQ =
  navigator.userAgent.indexOf("MQQbrowser") > -1 || navigator.userAgent.indexOf("QQTheme") > -1;

兄弟姐妹们,点波关注吧,一起分享有趣的技术!

掘金https://juejin.cn/user/3034307824456296/posts 全部原创好文

CSDNhttps://blog.csdn.net/qq_42753705?type=lately 全部原创好文

segmentfault 思否https://segmentfault.com/u/jasonma1995/articles 全部原创好文

博客园https://www.cnblogs.com/Jason1995/ 全部原创好文

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐