JS读取UserAgent信息并做判断 JS读取UserAgent信息并做判断  

  userAgent信息可以由navigator.userAgent拿到。
例子:

<script type="text/javascript">
document.writeln("navigator.userAgent: " + navigator.userAgent + "<br />");
document.writeln("navigator.appName: " + navigator.appName + "<br />");
document.writeln("navigator.appCodeName: " + navigator.appCodeName + "<br />");
document.writeln("navigator.appVersion: " + navigator.appVersion + "<br />");
document.writeln("navigator.appMinorVersion: " + navigator.appMinorVersion + "<br />");
document.writeln("navigator.platform: " + navigator.platform + "<br />");
document.writeln("navigator.cookieEnabled: " + navigator.cookieEnabled + "<br />");
document.writeln("navigator.onLine: " + navigator.onLine + "<br />");
document.writeln("navigator.userLanguage: " + navigator.userLanguage + "<br />");
document.writeln("navigator.mimeTypes[1].description: " + navigator.mimeTypes[1].description + "<br />");
document.writeln("navigator.mimeTypes[1].type: " + navigator.mimeTypes[1].type + "<br />");
document.writeln("navigator.plugins[3].description: " + navigator.plugins[3].description + "<br />");
</script> 

如果想来判断其中内容,可以用

navigator.userAgent.match()或navigator.userAgent.indexOf() // 来判断

前者一般是用来判断手机客户端,例如

navigator.userAgent.match(/iPhone/i) , navigator.userAgent.match(/Safari/i)

后者用来变向判断userAgent字符串中某值是否存在,例如

navigator.userAgent.indexOf("iPhone OS 4_0_2") !=-1
<script type="text/javascript">
var useHTML5 = 1;
if(navigator.userAgent.indexOf("iPhone OS 4_0_2") !=-1)
{
 useHTML5=2;
}
document.write("Value is: <br>");
document.write(useHTML5);
</script> 

所以它经常会用来判断浏览器类型,如

navigator.userAgent.indexOf("Firefox")>0