javascript实现获取浏览器版本、浏览器类型


Posted in Javascript onDecember 02, 2015

     从网上找到一段使用JavaScript判断浏览器以及浏览器版本的比较好的代码,在此记录一下:

<script type="text/javascript">
    var Sys = {};
    var ua = navigator.userAgent.toLowerCase();
    var s;
    (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :
    (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :
    (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] :
    (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] :
    (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;

    //以下进行测试
    if (Sys.ie) document.write('IE: ' + Sys.ie);
    if (Sys.firefox) document.write('Firefox: ' + Sys.firefox);
    if (Sys.chrome) document.write('Chrome: ' + Sys.chrome);
    if (Sys.opera) document.write('Opera: ' + Sys.opera);
    if (Sys.safari) document.write('Safari: ' + Sys.safari);
</script>

将上述代码封装成一个方法,方法返回Sys对象,Sys对象中封装了浏览器的类型和版本信息,如下:

function getBrowserInfo(){
  var Sys = {};
  var ua = navigator.userAgent.toLowerCase();
  var re =/(msie|firefox|chrome|opera|version).*?([\d.]+)/;
  var m = ua.match(re);
  Sys.browser = m[1].replace(/version/, "'safari");
  Sys.ver = m[2];
  return Sys;
}

当需要获取浏览器的类型和版本信息时,就可以使用getBroserInfo方法,如下:

<script type="text/javascript">
     //获取当前的浏览器信息
     var sys = getBrowserInfo();
     //sys.browser得到浏览器的类型,sys.ver得到浏览器的版本
     document.write(sys.browser + "的版本是:" + sys.ver);
 </script>

完整测试代码如下:

<!DOCTYPE HTML>
<html>
 <head>
  <title>JavaScript获取浏览器类型与版本</title>
  <script type="text/javascript">
    var Sys = {};
    var ua = navigator.userAgent.toLowerCase();
    var s;
    (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :
    (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :
    (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] :
    (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] :
    (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;

    //以下进行测试
    if (Sys.ie) document.write('IE: ' + Sys.ie);
    if (Sys.firefox) document.write('Firefox: ' + Sys.firefox);
    if (Sys.chrome) document.write('Chrome: ' + Sys.chrome);
    if (Sys.opera) document.write('Opera: ' + Sys.opera);
    if (Sys.safari) document.write('Safari: ' + Sys.safari);
  </script>
  <script type="text/javascript">
    function getBrowserInfo(){
      var Sys = {};
      var ua = navigator.userAgent.toLowerCase();
      var re =/(msie|firefox|chrome|opera|version).*?([\d.]+)/;
      var m = ua.match(re);
      Sys.browser = m[1].replace(/version/, "'safari");
      Sys.ver = m[2];
      return Sys;
    }
    document.write('<hr/>');
    //获取当前的浏览器信息
    var sys = getBrowserInfo();
    //sys.browser得到浏览器的类型,sys.ver得到浏览器的版本
    document.write(sys.browser + "的版本是:" + sys.ver);
  </script>
 </head>
 
 <body>
  
 </body>
</html>

运行结果:

IE浏览器下测试结果:

javascript实现获取浏览器版本、浏览器类型

google浏览器下测试结果:

javascript实现获取浏览器版本、浏览器类型

火狐浏览器下测试结果:

javascript实现获取浏览器版本、浏览器类型

以上就是关于javascript实现获取浏览器版本及类型的详细代码,针对IE浏览器、火狐浏览器、google浏览器进行了测试,很成功,大家可以动手实践一下。

Javascript 相关文章推荐
JavaScript 原型学习总结
Oct 29 Javascript
jquery trigger伪造a标签的click事件取代window.open方法
Jun 23 Javascript
使用RequireJS优化JavaScript引用代码的方法
Jul 01 Javascript
JavaScript中SetInterval与setTimeout的用法详解
Nov 10 Javascript
浅析JavaScript作用域链、执行上下文与闭包
Feb 01 Javascript
JS实现iframe自适应高度的方法(兼容IE与FireFox)
Jun 24 Javascript
利用jquery实现下拉框的禁用与启用
Dec 07 Javascript
30分钟快速入门掌握ES6/ES2015的核心内容(上)
Apr 18 Javascript
css配合JavaScript实现tab标签切换效果
Oct 11 Javascript
浅谈webpack 四个核心概念之Entry
Jun 12 Javascript
JS实现拼图游戏
Jan 29 Javascript
利用js实现简单开关灯代码
Nov 23 Javascript
JavaScript如何禁止Backspace键
Dec 02 #Javascript
js文本框输入内容智能提示效果
Dec 02 #Javascript
JavaScript使用DeviceOne开发实战(四)仿优酷视频应用
Dec 02 #Javascript
Jquery左右滑动插件之实现超级炫酷动画效果附源码下载
Dec 02 #Javascript
jQuery 1.9.1源码分析系列(十四)之常用jQuery工具
Dec 02 #Javascript
jQuery 1.9.1源码分析系列(十三)之位置大小操作
Dec 02 #Javascript
解决jQuery使用JSONP时产生的错误
Dec 02 #Javascript
You might like
一拳超人中怪人协会钦定! S级别最强四人!
2020/03/02 日漫
php jq jquery getJSON跨域提交数据完整版
2013/09/13 PHP
Javascript 写的简单进度条控件
2008/01/22 Javascript
setTimeout与setInterval在不同浏览器下的差异
2010/01/24 Javascript
web css实现整站样式互相切换
2013/10/29 Javascript
JqueryMobile动态生成listView并实现刷新的两种方法
2014/03/05 Javascript
使用JavaScript链式编程实现模拟Jquery函数
2014/12/21 Javascript
jQuery实现菜单感应鼠标滑动动画效果的方法
2015/02/28 Javascript
javascript+html5实现绘制圆环的方法
2015/07/28 Javascript
apply和call方法定义及apply和call方法的区别
2015/11/15 Javascript
Jquery实现简单的轮播效果(代码管用)
2016/03/14 Javascript
jquery easyui datagrid实现增加,修改,删除方法总结
2016/05/25 Javascript
Node.js 数据加密传输浅析
2016/11/16 Javascript
JS实现点击Radio动态更新table数据
2017/07/18 Javascript
完美解决手机网页中输入框被输入法遮挡的问题
2017/12/19 Javascript
AngularJS实现的2048小游戏功能【附源码下载】
2018/01/03 Javascript
5 种JavaScript编码规范
2018/01/30 Javascript
vue自定义指令实现方法详解
2019/02/11 Javascript
JavaScript面向对象程序设计中对象的定义和继承详解
2019/07/29 Javascript
AntV F2和vue-cli构建移动端可视化视图过程详解
2019/10/08 Javascript
Element InputNumber 计数器的实现示例
2020/08/03 Javascript
[52:03]DOTA2-DPC中国联赛 正赛 Ehome vs iG BO3 第三场 1月31日
2021/03/11 DOTA
python修改操作系统时间的方法
2015/05/18 Python
学习python类方法与对象方法
2016/03/15 Python
Sanic框架基于类的视图用法示例
2018/07/18 Python
在python中bool函数的取值方法
2018/11/01 Python
使用Python实现毫秒级抢单功能
2019/06/06 Python
Python celery原理及运行流程解析
2020/06/13 Python
CSS3 重置iphone浏览器按钮input,select等表单元素的默认样式
2014/10/11 HTML / CSS
详解通过HTML5 Canvas实现图片的平移及旋转变化的方法
2016/03/22 HTML / CSS
命名空间(namespace)和程序集(Assembly)有什么区别
2015/09/25 面试题
活动志愿者自荐信
2014/01/27 职场文书
中学自我评价
2014/01/31 职场文书
购房委托书范本
2014/09/18 职场文书
Vue的列表之渲染,排序,过滤详解
2022/02/24 Vue.js
使用kubeadm命令行工具创建kubernetes集群
2022/03/31 Servers