JavaScript判断是否是微信浏览器


Posted in Javascript onJune 13, 2016

先给大家说下实现原理

根据判断UA中是否有关键字micromessenger,有的话则是微信内置浏览器

实现代码如下所示:

//判断是否微信登陆
function isWeiXin() {
var ua = window.navigator.userAgent.toLowerCase();
console.log(ua);//mozilla/5.0 (iphone; cpu iphone os 9_1 like mac os x) applewebkit/601.1.46 (khtml, like gecko)version/9.0 mobile/13b143 safari/601.1
if (ua.match(/MicroMessenger/i) == 'micromessenger') {
return true;
} else {
return false;
}
}
if(isWeiXin()){
console.log(" 是来自微信内置浏览器")
}else{
console.log("不是来自微信内置浏览器")
}

微信浏览器的UA栗子

在iPhone下:

Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B176 MicroMessenger/4.3.2

在Android下:

Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S5660 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.255

新建模拟器,更换UA如图:

JavaScript判断是否是微信浏览器

用Chrome的iPhone5模拟测试

JavaScript判断是否是微信浏览器 

PS:js判断是否在微信浏览器中打开

用JS来判断了,经过查找资料终于实现了效果,直接上代码

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

通过测试完全通过,无论是android 还是iphone,ipad 都可以,当然我们除了用js来判断之外,用其它语言来判断就更简单了,比如PHP

function is_weixin(){ 
if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false ) { 
return true; 
} 
return false; 
}
Javascript 相关文章推荐
仿163填写邮件地址自动显示下拉(无优化)
Nov 05 Javascript
javascript 限制输入和粘贴(IE,firefox测试通过)
Nov 14 Javascript
JS数学函数Exp使用说明
Aug 09 Javascript
关于js注册事件的常用方法
Apr 03 Javascript
jquery中load方法的用法及注意事项说明
Feb 22 Javascript
深入理解JS addLoadEvent函数
May 20 Javascript
HTML5 canvas 9绘制图片实例详解
Sep 06 Javascript
用js实现简单算法的实例代码
Sep 24 Javascript
深入理解bootstrap框架之入门准备
Oct 09 Javascript
JS实现websocket长轮询实时消息提示的效果
Oct 10 Javascript
详解webpack3编译兼容IE8的正确姿势
Dec 21 Javascript
bootstrapTable+ajax加载数据 refresh更新数据
Aug 31 Javascript
JavaScript_object基础入门(必看篇)
Jun 13 #Javascript
js 连续赋值的简单实现
Jun 13 #Javascript
全面解析Bootstrap中Carousel轮播的使用方法
Jun 13 #Javascript
全面解析Bootstrap中tooltip、popover的使用方法
Jun 13 #Javascript
JavaScript遍历求解数独问题的主要思路小结
Jun 12 #Javascript
Node.js环境下编写爬虫爬取维基百科内容的实例分享
Jun 12 #Javascript
JavaScript解八皇后问题的方法总结
Jun 12 #Javascript
You might like
多php服务器实现多session并发运行
2006/10/09 PHP
php discuz 主题表和回帖表的设计
2009/03/13 PHP
PHP中使用Memache作为进程锁的操作类分享
2015/03/30 PHP
Centos7安装swoole扩展操作示例
2020/03/26 PHP
jquery 新浪网易的评论块制作
2010/07/01 Javascript
jquery 利用show和hidden实现级联菜单示例代码
2013/08/09 Javascript
图标线性回归斜着移动到指定的位置
2013/08/16 Javascript
原生js做的手风琴效果的导航菜单
2013/11/08 Javascript
一款基jquery超炫的动画导航菜单可响应单击事件
2014/11/02 Javascript
node.js操作mongoDB数据库示例分享
2014/11/26 Javascript
jQuery关键词说明插件cluetip使用指南
2015/04/21 Javascript
jQuery 的 ready()的纯js替代方法
2016/11/20 Javascript
js时间戳和c#时间戳互转方法(推荐)
2017/02/15 Javascript
详解node child_process模块学习笔记
2018/01/24 Javascript
jquery实现的简单轮播图功能【适合新手】
2018/08/17 jQuery
微信小程序实现左滑修改、删除功能
2020/10/19 Javascript
vue项目搭建以及全家桶的使用详细教程(小结)
2018/12/19 Javascript
Node.js系列之发起get/post请求(2)
2019/08/30 Javascript
JS中的const命令你真懂它吗
2020/03/08 Javascript
[00:09]DOTA2全国高校联赛 精彩活动引爆全场
2018/05/30 DOTA
使用IPython下的Net-SNMP来管理类UNIX系统的教程
2015/04/15 Python
Python模拟百度登录实例详解
2016/01/20 Python
Python模拟登录验证码(代码简单)
2016/02/06 Python
Python如何获取系统iops示例代码
2016/09/06 Python
对Python 网络设备巡检脚本的实例讲解
2018/04/22 Python
python3 实现验证码图片切割的方法
2018/12/07 Python
windows10下安装TensorFlow Object Detection API的步骤
2019/06/13 Python
Python 依赖库太多了该如何管理
2019/11/08 Python
解决pip install psycopg2出错问题
2020/07/09 Python
python实现录制全屏和选择区域录屏功能
2021/02/05 Python
分公司经理任命书
2014/06/05 职场文书
北京申奥口号
2014/06/19 职场文书
大学生村官个人对照检查材料(群众路线)
2014/09/26 职场文书
服务承诺书
2015/01/19 职场文书
公司开除员工通知
2015/04/22 职场文书
回复函格式及范文
2015/07/14 职场文书