【原創+親測可用】JS如何區分微信瀏覽器、QQ瀏覽器和QQ內置瀏覽器


1、原理:

通過不同移動端的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

 

2、直接上js正則判斷代碼:(\s 代表空白符)

<script type="text/javascript">
//判斷是否QQ內置瀏覽器(含IOS和Andriod)
function isQQAPP(){
    var isIosQQ = ( /(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent) && /\sQQ/i.test(navigator.userAgent));
    var isAndroidQQ = ( /(Android)/i.test(navigator.userAgent) && /MQQBrowser/i.test(navigator.userAgent) && /\sQQ/i.test((navigator.userAgent).split('MQQBrowser')));
    alert(isIosQQ+"--"+isAndroidQQ);
    if(isIosQQ || isAndroidQQ){
        $(".down-share").empty();
        var html = "<a class='glyphicon glyphicon-download share' href='/index.php/Mobile/Product/detail/id/{$_list.id}/method/download'>下載行程</a><a class='glyphicon glyphicon-share share share2' href='javascript:void(0);'>分享行程</a>";
        $(".down-share").append(html);
    }
}
</script>

 

3、參考文章:

https://blog.csdn.net/zxjiayou1314/article/details/52814716

https://segmentfault.com/q/1010000006179538/a-1020000006230274

https://www.cnblogs.com/zhangxiaoshu/p/8489665.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM