美文网首页
JS如何区分微信浏览器、QQ浏览器和QQ内置浏览器,解决 ios

JS如何区分微信浏览器、QQ浏览器和QQ内置浏览器,解决 ios

作者: JasonMa丶 | 来源:发表于2021-12-17 11:17 被阅读0次

    原理

    通过不同移动端的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/ 全部原创好文

    相关文章

      网友评论

          本文标题:JS如何区分微信浏览器、QQ浏览器和QQ内置浏览器,解决 ios

          本文链接:https://www.haomeiwen.com/subject/jicifrtx.html