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 相关文章推荐
Javascript对象属性方法汇总
Nov 21 Javascript
原生JS操作网页给p元素添加onclick事件及表格隔行变色
Dec 01 Javascript
Extjs根据条件设置表格某行背景色示例
Jul 23 Javascript
Jquery选择器中使用变量实现动态选择例子
Jul 25 Javascript
如何改进javascript代码的性能
Apr 02 Javascript
javascript的BOM汇总
Jul 16 Javascript
浅析Node.js 中 Stream API 的使用
Oct 23 Javascript
JS中对数组元素进行增删改移的方法总结
Dec 15 Javascript
jquery对象与DOM对象转化
Feb 08 Javascript
深入理解react 组件类型及使用场景
Mar 07 Javascript
简单易扩展可控性强的Jquery转盘抽奖程序
Mar 16 jQuery
JS函数式编程实现XDM一
Jun 16 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
使用sockets:从新闻组中获取文章(二)
2006/10/09 PHP
Yii2框架控制器、路由、Url生成操作示例
2019/05/27 PHP
MSN消息提示类
2006/09/05 Javascript
jquery选择器的选择使用及性能介绍
2013/01/16 Javascript
JavaScript中的正则表达式简明总结
2014/04/04 Javascript
js完美解决IE6不支持position:fixed的bug
2015/04/24 Javascript
chrome不支持form.submit的解决方案
2015/04/28 Javascript
探寻JavaScript中this指针指向
2016/04/23 Javascript
详解js的事件代理(委托)
2016/12/22 Javascript
使用Node.js实现一个多人游戏服务器引擎
2019/03/13 Javascript
详解JQuery基础动画操作
2019/04/12 jQuery
jquery-ui 进度条功能示例【测试可用】
2019/07/25 jQuery
vue+koa2实现session、token登陆状态验证的示例
2019/08/30 Javascript
使用纯前端JavaScript实现Excel导入导出方法过程详解
2020/08/07 Javascript
在vue中使用Echarts画曲线图的示例
2020/10/03 Javascript
在vue项目中引用Antv G2,以饼图为例讲解
2020/10/28 Javascript
Python实现读取目录所有文件的文件名并保存到txt文件代码
2014/11/22 Python
python输入错误密码用户锁定实现方法
2017/11/27 Python
python+Splinter实现12306抢票功能
2018/09/25 Python
PyQt打开保存对话框的方法和使用详解
2019/02/27 Python
Django网络框架之创建虚拟开发环境操作示例
2019/06/06 Python
关于Python作用域自学总结
2019/06/10 Python
解决python文件双击运行秒退的问题
2019/06/24 Python
pytorch逐元素比较tensor大小实例
2020/01/03 Python
在pycharm中为项目导入anacodna环境的操作方法
2020/02/12 Python
如何解决pycharm调试报错的问题
2020/08/06 Python
基于PyTorch中view的用法说明
2021/03/03 Python
耐克巴西官方网站:Nike巴西
2016/08/14 全球购物
博士学位自我鉴定范文
2013/12/26 职场文书
师范学院毕业生求职信范文
2013/12/26 职场文书
优秀大学生的自我评价
2014/01/16 职场文书
人力资源专员岗位职责
2014/01/30 职场文书
初三政治教学反思
2014/01/30 职场文书
交警个人先进事迹材料
2014/05/11 职场文书
使用Spring处理x-www-form-urlencoded方式
2021/11/02 Java/Android
python图像处理 PIL Image操作实例
2022/04/09 Python