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 相关文章推荐
JS动态获取当前时间,并写到特定的区域
May 03 Javascript
JavaScript实现跨浏览器的添加及删除事件绑定函数实例
Aug 04 Javascript
JavaScript常用标签和方法总结
Sep 01 Javascript
jQuery.extend 函数及用法详细
Sep 06 Javascript
分享纯手写漂亮的表单验证
Nov 19 Javascript
JQuery 动态生成Table表格实例代码
Dec 02 Javascript
详解Vuejs2.0之异步跨域请求
Apr 20 Javascript
鼠标拖动改变DIV等网页元素的大小的实现方法
Jul 06 Javascript
vue 挂载路由到头部导航的方法
Nov 13 Javascript
使用Angular CLI从蓝本生成代码详解
Mar 24 Javascript
JS实现动态无缝轮播
Jan 11 Javascript
javascript中的offsetWidth、clientWidth、innerWidth及相关属性方法
May 14 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 404错误页面实现代码
2009/06/22 PHP
PHP mcrypt可逆加密算法分析
2011/07/19 PHP
通过php删除xml文档内容的方法
2015/01/23 PHP
PHP7基于curl实现的上传图片功能
2018/05/11 PHP
jquery 插件学习(五)
2012/08/06 Javascript
JavaScript高级程序设计(第3版)学习笔记12 js正则表达式
2012/10/11 Javascript
JS禁用浏览器退格键实现思路及代码
2013/10/29 Javascript
JS如何判断移动端访问设备并解析对应CSS
2013/11/27 Javascript
JavaScript把数组作为堆栈使用的方法
2015/03/20 Javascript
AngularJS教程之简单应用程序示例
2016/08/16 Javascript
JS基于面向对象实现的选项卡效果示例
2016/12/20 Javascript
js的OOP继承实现(必看篇)
2017/02/18 Javascript
利用Node.js对文件进行重命名
2017/03/12 Javascript
Node.js学习之TCP/IP数据通讯(实例讲解)
2017/10/11 Javascript
JS实现带动画的回到顶部效果
2017/12/28 Javascript
微信小程序实现的涂鸦功能示例【附源码下载】
2018/01/12 Javascript
python实现跨文件全局变量的方法
2014/07/07 Python
Python内置模块logging用法实例分析
2018/02/12 Python
在Python中COM口的调用方法
2019/07/03 Python
python 利用浏览器 Cookie 模拟登录的用户访问知乎的方法
2019/07/11 Python
使paramiko库执行命令时在给定的时间强制退出功能的实现
2021/03/03 Python
CSS3动画效果回调处理详解
2014/12/10 HTML / CSS
CSS+jQuery实现的在线答题功能
2015/04/25 HTML / CSS
CSS3制作圆角图片和椭圆形图片
2016/07/08 HTML / CSS
利用CSS3 动画 绘画 圆形动态时钟
2018/03/20 HTML / CSS
HTML5 Canvas实现玫瑰曲线和心形图案的代码实例
2014/04/10 HTML / CSS
HTML5 文件上传下载的实例代码
2017/07/03 HTML / CSS
Exception类的常用方法
2012/06/16 面试题
党员年终民主评议的自我评价
2013/11/05 职场文书
出国英文推荐信
2014/05/10 职场文书
白血病捐款倡议书
2014/05/14 职场文书
软环境建设心得体会
2014/09/09 职场文书
《正比例》教学反思
2016/02/23 职场文书
导游词之北京明十三陵
2019/10/28 职场文书
python glom模块的使用简介
2021/04/13 Python
解决 redis 无法远程连接
2022/05/15 Redis