1 userAgent:包含浏览器名称和版本号的字符串
 <!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script>
//编写一段代码能够区分浏览器的主流和区分
document.write("<h1>"+navigator.userAgent+"</h1>");
var browser="unknown";
var ua=navigator.userAgent;
//如果ua中包含MSIE
if(ua.indexOf("MSIE")!=-1){
browser="IE";//browser赋值为"IE";
}else if(ua.indexOf("Firefox")!=-1){//否则,如果ua中包含Firefox
browser="Firefox"; //browser赋值为:Firefox
}
else if(ua.indexOf("OPR")!=-1){//否则,如果ua中包含OPR
browser="Opera"; //browser赋值为:"Opera"
}
else if(ua.indexOf("Chrome")!=-1){//否则,如果如果ua中包含Chrome
browser="Chrome"; //browser赋值为"Chrome"
}
else if(ua.indexOf("Safari")!=-1){ //否则,如果ua中包含Safari
browser="Safari";//browser赋值为"Safari"
}
else if(ua.indexOf("Trident")!=-1){//否则,如果ua中包含Trident
browser="IE";//browser赋值为"IE"
} document.write("<h1>浏览器名称:"+browser+"</h1>"); var version="unknown";
//如果browser不是"unknown"
if(browser!="unknown"){
if(browser=="Opera"){//如果browser是Opera
//在ua中查找OPR的位置,+3+1,保存在i中
var i=ua.indexOf("OPR")+3+1;
//截取ua中i位置之后的3位,转为浮点数保存在version中
version=parseFloat(ua.slice(i,i+3));
//否则,如果browser是"IE",且ua中找不到“MSIE”
}else if(browser=="IE"&&ua.indexOf("MSIE")==-1){
//将version改为"11"
version="11";
}else{//否则
//在ua中查找browser的位置,+browser的字符个数+1,保存在i中
var i=ua.indexOf(browser)+browser.length+1;
//选取ua中i位置之后的3位,转为浮点数保存在version中
version=parseFloat(ua.slice(i,i+3)); }
}
document.write("<h1>版本号:"+version+"</h1>")
</script>
</body>
</html>

最新文章

  1. 以最简单方式学习Linux
  2. nodejs之主机不能访问到虚拟机的web服务器
  3. 如何从SharePoint Content DB中查询List数据
  4. Ninx虚拟主机的配置
  5. Hadoop InputFormat OutputFormat
  6. jQuery无缝循环开源多元素动画轮播jquery.slides插件
  7. Effective C++ 第二版 17)operator=检查自己 18)接口完整 19)成员和友元函数
  8. Win10开发必备:Visual Studio 2015正式版下载
  9. OCX控件的注册卸载,以及判断是否注册
  10. 【UVA 10307 Killing Aliens in Borg Maze】最小生成树, kruscal, bfs
  11. 解决初次使用webpack+antd-mobile时css不生效的问题
  12. com.android.support:appcompat-v7:27.+问题解决
  13. Ubuntu16.04安装Python3.6 和pip(python3 各版本切换)
  14. ODOO(ERP源码安装)
  15. WIN32,_WIN32_WIN64
  16. pymongo--Bulk Write Operations
  17. java的反射应用
  18. Should Assertion Library
  19. eclipse鼠标变成十字架
  20. 解决Github Desktop Repo publish 失败问题

热门文章

  1. Runtime初学习
  2. 关于arduino清空串口缓存(转)
  3. 集合框架遍历方式之——for-each循环
  4. python之socket 网络编程
  5. es6新特性(一)
  6. 如何去掉Eclipse里面自动追加的一些注释!!!内详
  7. JVM常量池
  8. jfreechart 整合sturts2牛刀小试
  9. Python.with.context-manager
  10. AngularJs自定义指令详解(7) - multiElement