判斷當前頁面是否在微信瀏覽器中打開(包括電腦微信)

記筆記,免忘記!

項目中圖片上傳分爲兩種,一種使用微信接口上傳,一種其它上傳(本人使用的七牛);

然後客服小姐姐反饋,在電腦微信上面進行圖片的上傳總是停留在正在加載動畫,於是對這個上傳進行了調試發現之前的是否是微信的判斷有問題,故做此記錄。

以下方法可以判斷電腦微信windowswechat微信開發者工具wechatdevtools:

var ua = navigator.userAgent.toLowerCase();
function isWeiXin() {
    if (ua.match(/MicroMessenger/i) == 'micromessenger' && ua.match(/WindowsWechat/i) != 'windowswechat' && ua.match(/WechatDevTools/i) !='wechatdevtools') {
        return true;
    }
    else {
        return false;
    }
}


if(isWeiXin()){
    wxupload();
}else{
    qiniuupload();
}

以下爲網上搜索找到的,感謝網上的各位大佬的總結

原文章:判斷當前頁面是否在微信瀏覽器中打開(四類方法整理)作者:申文哲

方法一:(微信官方js判斷做法)此方法無法判斷電腦微信

var ua = navigator.userAgent.toLowerCase();
  var isWeixin = ua.indexOf('micromessenger') != -1;
  if (isWeixin) {
      return true;
  }else{
      return false;      
  }

方法二:(js判斷做法)此方法無法判斷電腦微信

function is_weixn(){  
        var ua = navigator.userAgent.toLowerCase();  
        if(ua.match(/MicroMessenger/i)=="micromessenger") {  
            return true;  
        } else {  
            return false;  
        }  
    }

方法三:(js判斷做法)未測試能否判斷電腦微信

var is_weixin = (function(){return navigator.userAgent.toLowerCase().indexOf('micromessenger') !== -1})();
    if(is_weixin){
      $(function(){
      return true;
          });
  }else{
       $(function(){
      return false;
       });
      }

方法四:(利用PHP判斷)

function is_weixin(){  
        if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false ) {  //strpos() 函數查找字符串在另一字符串中第一次出現的位置。
            return true;  
        }    
          return false;  
    }  

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章