今天突然看到一段很好的代码,分享给大家,顺便也给自己留个笔记,js判断浏览器的环境具体如下:
方法一:
// 判断浏览器函数 function ismobile(){ if(window.navigator.useragent.match(/(phone|pad|pod|iphone|ipod|ios|ipad|android|mobile|blackberry|iemobile|mqqbrowser|juc|fennec|wosbrowser|browserng|webos|symbian|windows phone)/i)) { return true; // 移动端 }else{ return false; // pc端 } }
方法二:这个方法摘自:im.qq.com
var os = function() { var ua = navigator.useragent, iswindowsphone = /(?:windows phone)/.test(ua), issymbian = /(?:symbianos)/.test(ua) || iswindowsphone, isandroid = /(?:android)/.test(ua), isfirefox = /(?:firefox)/.test(ua), ischrome = /(?:chrome|crios)/.test(ua), istablet = /(?:ipad|playbook)/.test(ua) || (isandroid && !/(?:mobile)/.test(ua)) || (isfirefox && /(?:tablet)/.test(ua)), isphone = /(?:iphone)/.test(ua) && !istablet, ispc = !isphone && !isandroid && !issymbian; return { istablet: istablet, isphone: isphone, isandroid : isandroid, ispc : ispc }; }(); // 使用方法 if(os.isandroid || os.isphone){ alert("-----"); }
判断是否为微信客户端:
var iswechart = function () { var rst = true if(window.navigator.useragent.match(/(phone|pad|pod|iphone|ipod|ios|ipad|android|mobile|blackberry|iemobile|mqqbrowser|juc|fennec|wosbrowser|browserng|webos|symbian|windows phone)/i)){ var ua = navigator.useragent.tolowercase(); if (!(ua.match(/micromessenger/i) == "micromessenger")) { rst = false; } }else { rst = false; } return rst; }
判断微信浏览器是pc端还是手机端,以及手机端是微信浏览器还是非微信浏览器
//平台、设备和操作系统 var system = { win: false, mac: false, xll: false, ipad: false }; //检测平台 var p = navigator.platform; system.win = p.indexof("win") == 0; system.mac = p.indexof("mac") == 0; system.x11 = (p == "x11") || (p.indexof("linux") == 0); system.ipad = (navigator.useragent.match(/ipad/i) != null) ? true : false; //跳转语句,如果是手机访问就自动跳转到wap.baidu.com页面 if (system.win || system.mac || system.xll || system.ipad) { alert("在pc端上打开的"); } else { var ua = navigator.useragent.tolowercase(); if(ua.match(/micromessenger/i)=="micromessenger") { alert("在手机端微信上打开的"); } else { alert("在手机上非微信上打开的"); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。
如对本文有疑问, 点击进行留言回复!!
Android 入门第七讲01-数据存储(数据存储概述,文件存储(raw和asserts目录读写,data/data/包名目录读写,sdcard目录读写),SharedPreferences读写)
vue-axios系列:axios拦截器,配置请求头,配置请求参数
Vuejs 针对 安卓低版本 、ios9.x 不兼容 ES6语法导致失效解决方法
网友评论