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倒计时页面跳转实例小结
Sep 11 Javascript
ajax请求乱码的解决方法(中文乱码)
Apr 10 Javascript
JavaScript使用HTML5的window.postMessage实现跨域通信例子
Apr 11 Javascript
一个实用的图片切换支持点击切换和自动轮播
Sep 09 Javascript
jQuery中detach()方法用法实例
Dec 25 Javascript
angularjs学习笔记之完整的项目结构
Sep 26 Javascript
Ionic默认的Tabs模板使用实例
Aug 29 Javascript
bootstrap模态框消失问题的解决方法
Dec 02 Javascript
vue实现留言板todolist功能
Aug 16 Javascript
vue实现的组件兄弟间通信功能示例
Dec 04 Javascript
jquery实现聊天机器人
Feb 08 jQuery
VueQuillEditor富文本上传图片(非base64)
Jun 03 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
桌面中心(一)创建数据库
2006/10/09 PHP
php 分页函数multi() discuz
2009/06/21 PHP
AJAX的跨域访问-两种有效的解决方法介绍
2013/06/22 PHP
Yii框架上传图片用法总结
2016/03/28 PHP
php从身份证获取性别和出生年月
2017/02/09 PHP
TP5框架使用QueryList采集框架爬小说操作示例
2020/03/26 PHP
jQuery中实现动画效果的基本操作介绍
2013/04/16 Javascript
JS实现点击下载的小例子
2013/07/10 Javascript
js取两个数组的交集|差集|并集|补集|去重示例代码
2013/08/07 Javascript
jquery 按钮状态效果 正常、移上、按下
2013/08/12 Javascript
js用typeof方法判断undefined类型
2014/07/15 Javascript
jquery中map函数遍历数组用法实例
2015/05/18 Javascript
自定义Angular指令与jQuery实现的Bootstrap风格数据双向绑定的单选与多选下拉框
2015/12/12 Javascript
温习Javascript基础语法之词法结构
2016/05/31 Javascript
JavaScript中Form表单技术汇总(推荐)
2016/06/26 Javascript
AngularJS 指令详细介绍
2016/07/27 Javascript
js事件源window.event.srcElement兼容性写法(详解)
2016/11/25 Javascript
前端自动化开发之Node.js的环境搭建教程
2017/04/01 Javascript
bootstrap daterangepicker汉化以及扩展功能
2017/06/15 Javascript
jQuery中each循环的跳出和结束实例
2017/08/16 jQuery
gulp教程_从入门到项目中快速上手使用方法
2017/09/14 Javascript
JavaScript引用类型Date常见用法实例分析
2018/08/08 Javascript
node Buffer缓存区常见操作示例
2019/05/04 Javascript
JS根据json数组多个字段排序及json数组常用操作
2019/06/06 Javascript
javascript实现简单搜索功能
2020/03/26 Javascript
在vue中使用Echarts利用watch做动态数据渲染操作
2020/07/20 Javascript
vue实现虚拟列表功能的代码
2020/07/28 Javascript
Python最基本的数据类型以及对元组的介绍
2015/04/14 Python
手把手教你安装Windows版本的Tensorflow
2020/03/26 Python
中学生学习生活的自我评价
2013/10/26 职场文书
大专毕业自我鉴定
2014/02/04 职场文书
好好学习保证书
2015/02/26 职场文书
敬老院义诊活动总结
2015/05/07 职场文书
网络安全倡议书(3篇)
2019/09/18 职场文书
2019年“红色之旅”心得体会1000字(3篇)
2019/09/27 职场文书
Python中的套接字编程是什么?
2021/06/21 Python