js判断浏览器类型以及语言
Posted myIvan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js判断浏览器类型以及语言相关的知识,希望对你有一定的参考价值。
1、检查是否是移动端(Mobile)、ipad、iphone、微信、QQ等
<script type="text/javascript"> //判断访问终端 var browser={ versions:function(){ var u = navigator.userAgent return { trident: u.indexOf(‘Trident‘) > -1, //IE内核 presto: u.indexOf(‘Presto‘) > -1, //opera内核 webKit: u.indexOf(‘AppleWebKit‘) > -1, //苹果、谷歌内核 gecko: u.indexOf(‘Gecko‘) > -1 && u.indexOf(‘Khtml‘) == -1,//火狐内核 mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端 ios: !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端 android: u.indexOf(‘Android‘) > -1 || u.indexOf(‘Adr‘) > -1, //android终端 iPhone: u.indexOf(‘iPhone‘) > -1 , //是否为iPhone或者QQHD浏览器 iPad: u.indexOf(‘iPad‘) > -1, //是否iPad webApp: u.indexOf(‘Safari‘) == -1, //是否web应该程序,没有头部与底部 weixin: u.indexOf(‘MicroMessenger‘) > -1, //是否微信 qq: u.match(/sQQ/i) == " qq" //是否QQ }; }(), //语言 language:(navigator.browserLanguage || navigator.language).toLowerCase(); </script>
使用方法:
//判断是否IE内核 if(browser.versions.trident){ alert("is IE浏览器"); } //判断是否webKit内核 if(browser.versions.webKit){ alert("is webKit内核浏览器"); } //判断是否移动端 if(browser.versions.mobile||browser.versions.android||browser.versions.ios){ alert("移动端"); } //判断是否微信内置浏览器 if(browser.versions.weixin){ alert("微信内置浏览器")} //判断是否QQ内置浏览器 if(browser.versions.qq){ alert("qq内置浏览器")} //判断语言 if(browser.language.indexOf(‘zh‘)>-1){ alert(‘中文‘); }else if(browser.language.indexOf(‘en‘)>-1){ alert(‘英文‘) }else{ alert(‘其他语言‘) }
2、只判断微信,可以简写这样
if(navigator.userAgent.indexOf(‘MicroMessenger‘) > -1){ alert(‘微信里‘); }else{ alert(‘微信外‘) }
3、只判断浏览器语言
var language = (navigator.browserLanguage || navigator.language).toLowerCase(); if(language.indexOf(‘zh‘)>-1){ alert(‘中文‘); }else if(language.indexOf(‘en‘)>-1){ alert(‘英文‘) }else{ alert(‘其他语言‘) }
4、判断iPhone|iPad|iPod|iOS|Android客户端|PC端,分别跳转不同页面
if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) { //判断iPhone|iPad|iPod|iOS window.location.href ="iPhone.html"; }else if(/(Android)/i.test(navigator.userAgent)) { //判断Android window.location.href ="Android.html"; }else{ //pc window.location.href ="pc.html"; };
5、判断是IOS还是Android客户端
if(navigator.userAgent.match(/(i[^;]+;( U;)? CPU.+Mac OS X/)){ alert("IOS"); }else if(navigator.userAgent.indexOf(‘Android‘) > -1 || navigator.userAgent.indexOf(‘Adr‘) > -1){ alert("Android") }
6、判断PC端还是移动端
function isPC(){ var userAgentInfo = navigator.userAgent.toLowerCase(); var Agents = ["android", "iphone","symbianos", "windows phone","ipad", "ipod"]; for (var v = 0; v < Agents.length; v++) { if (userAgentInfo.indexOf(Agents[v]) >= 0) { alert("移动端"); return false; } } return true; }
7、判断ie浏览器版本
function IEVersion() { var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器 var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器 var isIE11 = userAgent.indexOf(‘Trident‘) > -1 && userAgent.indexOf("rv:11.0") > -1; if(isIE) { var reIE = new RegExp("MSIE (\d+\.\d+);"); reIE.test(userAgent); var fIEVersion = parseFloat(RegExp["$1"]); if(fIEVersion == 7) { return 7; } else if(fIEVersion == 8) { return 8; } else if(fIEVersion == 9) { return 9; } else if(fIEVersion == 10) { return 10; } else { return 6;//IE版本<=6 } } else if(isEdge) { return ‘edge‘;//edge } else if(isIE11) { return 11; //IE11 }else{ return -1;//不是ie浏览器 } }
以上是关于js判断浏览器类型以及语言的主要内容,如果未能解决你的问题,请参考以下文章