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 相关文章推荐
鼠标移动到一张图片时变为另一张图片
Dec 05 Javascript
js 字符串转换成数字的三种方法
Mar 23 Javascript
JS随机生成不重复数据的实例方法
Jul 17 Javascript
jquery 实现上下滚动效果示例代码
Aug 09 Javascript
JavaScript通过正则表达式实现表单验证电话号码
Mar 07 Javascript
jQuery代码实现发展历程时间轴特效
Jul 30 Javascript
jQuery Uploadify 上传插件出现Http Error 302 错误的解决办法
Dec 12 Javascript
JavaScript重定向URL参数的两种方法小结
Oct 19 Javascript
vue打包后显示空白正确处理方法
Nov 01 Javascript
使用layer.msg 时间设置不起作用的解决方法
Sep 12 Javascript
原生js实现日历效果
Mar 02 Javascript
JavaScript中while循环的基础使用教程
Aug 11 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 函数学习简单小结
2010/07/08 PHP
yii框架源码分析之创建controller代码
2011/06/28 PHP
php文本转图片自动换行的方法
2013/03/13 PHP
jquery ajax 同步异步的执行 return值不能取得的解决方案
2012/01/08 Javascript
js设置文本框中焦点位置在最后的示例代码(简单实用)
2014/03/04 Javascript
js在数组中删除重复的元素自保留一个(两种实现思路)
2014/08/22 Javascript
javascript解析xml实现省市县三级联动的方法
2015/07/25 Javascript
JS判断是否为JSON对象及是否存在某字段的方法(推荐)
2016/11/29 Javascript
基于rem的移动端响应式适配方案(详解)
2017/07/07 Javascript
js提取中文拼音首字母的封装工具类
2018/03/12 Javascript
用Node提供静态文件服务的方法
2018/07/06 Javascript
angular的输入和输出的使用方法
2018/09/22 Javascript
js尾调用优化的实现
2019/05/23 Javascript
Python中实现两个字典(dict)合并的方法
2014/09/23 Python
TensorFlow模型保存和提取的方法
2018/03/08 Python
Python常见数据结构之栈与队列用法示例
2019/01/14 Python
PyQt5+Caffe+Opencv搭建人脸识别登录界面
2019/08/28 Python
Python常用模块logging——日志输出功能(示例代码)
2019/11/20 Python
Python如何实现爬取B站视频
2020/05/20 Python
mac安装python3后使用pip和pip3的区别说明
2020/09/01 Python
5分钟实现Canvas鼠标跟随动画背景
2019/11/18 HTML / CSS
网购亚洲时装、美容产品和生活百货:YesStyle
2016/09/15 全球购物
美国领先的机场停车聚合商:Airport Parking Reservations
2020/02/28 全球购物
机械专业毕业生自荐信
2013/11/02 职场文书
主管职责范文
2013/11/09 职场文书
简历自我评价模版
2014/01/31 职场文书
趣味游戏活动方案
2014/02/07 职场文书
初中新生军训方案
2014/05/13 职场文书
学校门卫岗位职责范本
2014/06/30 职场文书
继承权公证书范本
2015/01/23 职场文书
青岛海底世界导游词
2015/02/11 职场文书
事业单位工作人员年度考核个人总结
2015/02/12 职场文书
公司仓管员岗位职责
2015/04/01 职场文书
微信小程序APP的事件绑定以及传递参数时的冒泡和捕获
2022/04/19 Javascript
Java数据结构之堆(优先队列)
2022/05/20 Java/Android