avaScript是如何判断移动设备的类型呢?答案是:User Agent。
什么是User Agent?懂一点网页制作的人应该都明白。简单的说,User Agent就是用来识别浏览器名称、版本、引擎以及操作系统等信息的内容。
User Agent的判断是识别浏览器的关键,不仅仅如此,移动互联网开发势头迅猛,通过User Agent判断桌面端设备或移动设备就变的很为重要。当然,通过User Agent也可以用来改善一定的兼容性,比如判断得到用户用IE6浏览器那么就是用不同的代码。
-
<script type="text/javascript">
-
var browser = {
-
versions:function(){
-
var u = navigator.userAgent, app = navigator.appVersion;
-
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("Linux") > -1, //android终端或者uc浏览器
-
iPhone: u.indexOf("iPhone") > -1 , //是否为iPhone或者QQHD浏览器
-
iPad: u.indexOf("iPad") > -1, //是否iPad
-
webApp: u.indexOf("Safari") == -1 //是否web应该程序,没有头部与底部
-
};
-
}(),
-
language:(navigator.browserLanguage || navigator.language).toLowerCase()
-
}
-
document.writeln("语言版本: "+browser.language);
-
document.writeln(" 是否为移动终端: "+browser.versions.mobile);
-
document.writeln(" ios终端: "+browser.versions.ios);
-
document.writeln(" android终端: "+browser.versions.android);
-
document.writeln(" 是否为iPhone: "+browser.versions.iPhone);
-
document.writeln(" 是否iPad: "+browser.versions.iPad);
-
document.writeln(navigator.userAgent);
-
</script>
另附PC浏览器类型UserAgent判断的函数
-
<script language="javascript">
-
var explorer =navigator.userAgent,browse;
-
if (explorer.indexOf("MSIE") >= 0){
-
//ie
-
browse = "ie";
-
}else if (explorer.indexOf("Firefox") >= 0) {
-
// firefox 火狐
-
browse = "Firefox";
-
}else if(explorer.indexOf("Chrome") >= 0){
-
//Chrome 谷歌
-
browse = "Chrome";
-
}else if(explorer.indexOf("Opera") >= 0){
-
//Opera 欧朋
-
browse = "Opera";
-
}else if(explorer.indexOf("Safari") >= 0){
-
//Safari 苹果浏览器
-
browse = "Safari";
-
}else if(explorer.indexOf("Netscape")>= 0) {
-
//Netscape
-
browse = "Netscape";
-
}
-
</script>