首页 建站教程 WEB前端 正文

JS和PHP判断微信或QQ内置浏览器,从而实现执行不同的代码

在网站运营或开发的过程中,难免会遇到这样的需求,在微信或QQ内置浏览器中,做特殊处理,例如:通过JS判断出不同应用客户端执行不同的代码,那该怎么实现呢?实现原理通过不同移动端的ua弹窗 获取user-agent 参数包含的信息,进行判断浏览器类型1,JS版代码if (is_weixn()) { alert("请点击右上角按钮, 点击使用浏览器...

网站运营或开发的过程中,难免会遇到这样的需求,在微信或QQ内置浏览器中,做特殊处理,例如:通过js判断出不同应用客户端执行不同的代码,那该怎么实现呢?


JS和PHP判断微信或QQ内置浏览器,从而实现执行不同的代码 置浏览器 js判断 jQuery 判断浏览器 PHP判断浏览器  图1

实现原理

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

1,JS版代码

if (is_weixn()) {
  alert("请点击右上角按钮, 点击使用浏览器打开");
  window.location.href = '跳转到别的网站或页面';
}

if(is_qq()){
  alert("请点击右上角按钮, 点击使用浏览器打开");
  window.location.href = '跳转到别的网站或页面';
}

//qq浏览器
if(ua.indexOf('mqqbrowser')> -1 && ua.indexOf(" qq")<0){
    return = true;
    return;
 }

// 微信内置浏览器
function is_weixn() {
    var ua = navigator.userAgent.toLowerCase();
    if (ua.match(/MicroMessenger/i) == "micromessenger") {
        return true;
    } else {
        return false;
    }
}
// QQ内置浏览器
function is_qq(){
  var sUserAgent =navigator.userAgent.toLowerCase();
  if( sUserAgent.match(/QQ/i) == 'qq'){
    alert("QQ下载");
    return true
  }else{
    return false
  }
}

2,PHP版代码

if(isQQBrowser() == 'QQ'){
   echo "QQ内置浏览器";
}elseif(isWeixin() == 'MicroMessenger'){
   echo "微信内置浏览器";
}elseif(isQQBrowser() == 'QQBrowser'){
   echo "QQ浏览器";
}else{
   echo "其他浏览器";
}

function isWeixin(){ 
   if(strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false ) {
     return true;    //微信内置浏览器
   } 
     return false;
}

function isQQBrowser(){
   if(strpos($_SERVER['HTTP_USER_AGENT'], 'QQ') !== false){  
      if(strpos($_SERVER['HTTP_USER_AGENT'], '_SQ_') !== false){
	return "QQ";  //QQ内置浏览器
      }else{
        return "QQBrowser";  //QQ浏览器
	   }
      }
	return false;
}
打赏
海报

本文由优美主题原创或收集发布

转载请注明本文地址:http://umtheme.com/web/152.html

相关推荐

如何在html页面中通过css隐藏元素

在平常的页面布局中,我们经常会遇到将某个模块隐藏,而实现不同的页面布局或js交互效果,尤其是在响应式布局中比较常见,下面我们整理了一些关于实现隐藏页面元素的多种方法以及各种方法不同的特点(如:是否占据...

WEB前端 2020.09.18 0 31

web前端写html页面div+css命名规范

web前端写html页面div+css命名规范

使用良好的CSS书写规范来写CSS代码,既能最大化优化前端代码,提升代码阅读体验,更重要的是为以后维护带来方便。常用的CSS命名一般由小...

WEB前端 2020.09.08 0 82

给网页增加WOW插件滚动触发css动效

随着浏览器的兼容性增强,css3动画特效运用也越来越广,通过css3动画库加js可以实现很多炫酷的效果。比如在滚动页面时会触发展示各式各样的动画效果,通过设置调整可以改变动画的风格、延迟、偏移量等。优...

WEB前端 2018.07.04 0 3668

发布评论

ainiaobaibaibaibaobaobeishangbishibizuichiguachijingchongjingdahaqiandaliandangaodw_dogedw_erhadw_miaodw_tuzidw_xiongmaodw_zhutouganbeigeiliguiguolaiguzhanghahahahashoushihaixiuhanheixianhenghorse2huaixiaohuatonghuaxinhufenjiayoujiyankeaikeliankouzhaokukuloukunkuxiaolandelinileimuliwulxhainiolxhlikelxhqiuguanzhulxhtouxiaolxhwahahalxhzanningwennonuokpinganqianqiaoqinqinquantouruoshayanshengbingshiwangshuaishuijiaosikaostar0star2star3taikaixintanshoutianpingtouxiaotuwabiweifengweiquweiwuweixiaowenhaowoshouwuxiangjixianhuaxiaoerbuyuxiaokuxiaoxinxinxinxinsuixixixuyeyinxianyinyueyouhenghengyuebingyueliangyunzanzhajizhongguozanzhoumazhuakuangzuohenghengzuoyi

感谢您的支持