由于公司业务中涉及到一个分享指引功能,而像微信、QQ内置浏览器需要引导用户点击右上角进行操作,其他浏览器则引导点击浏览器下方进行操作,因此需要区分浏览器类型;
通过在页面alert(navigator.userAgent)可以观察到在QQ浏览器中包含关键字"mqqbrowser"而QQ内置浏览器中包含" qq"这里qq前面多一个空字符串;
var ua = navigator.userAgent.toLowerCase(), isWx = false,isQQ = false, isQQInstalled = false; if(ua.indexOf(‘ qq‘)>-1 && ua.indexOf(‘mqqbrowser‘) <0){ //qq内置浏览器 isQQInstalled = true; return; } if(ua.indexOf(‘mqqbrowser‘)> -1 && ua.indexOf(" qq")<0){ //qq浏览器 isQQ = true; return; } if (ua.match(/MicroMessenger/i) == ‘micromessenger‘) { //微信浏览器 isWx = true; return; }
代码简单粗糙但容易理解,希望对您有帮助。