JS获取当前使用的浏览器名字以及版本号实现方法


Posted in Javascript onAugust 19, 2016

工作中需要通过JS去获取当前使用的浏览器的名字以及版本号,网上大堆资料都有一个关键词是 navigator.appName,但是这个方法获取的浏览器的名字只有两种要么是IE要么就是Netscap,倒是可以用来判断是否使用了IE,但是我想获取具体的浏览器产品名字比如  Firefox,Chrome等。所以只好通过navigator.userAgent,但是这个字符串是非常长的,分析他的特征,通过正则表达式来解决这个问题是不错的方法。

(1) 获取浏览器名字+版本字符串

function getBrowserInfo()
{
var agent = navigator.userAgent.toLowerCase() ;

var regStr_ie = /msie [\d.]+;/gi ;
var regStr_ff = /firefox\/[\d.]+/gi
var regStr_chrome = /chrome\/[\d.]+/gi ;
var regStr_saf = /safari\/[\d.]+/gi ;
//IE
if(agent.indexOf("msie") > 0)
{
return agent.match(regStr_ie) ;
}

//firefox
if(agent.indexOf("firefox") > 0)
{
return agent.match(regStr_ff) ;
}

//Safari
if(agent.indexOf("safari") > 0 && agent.indexOf("chrome") < 0)
{
return agent.match(regStr_saf) ;
}

//Chrome
if(agent.indexOf("chrome") > 0)
{
return agent.match(regStr_chrome) ;
}

}

(2)然后获取版本号

var browser = getBrowserInfo() ;
//alert(browser); 
var verinfo = (browser+"").replace(/[^0-9.]/ig,"");

以上这篇JS获取当前使用的浏览器名字以及版本号实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
node.js中的fs.mkdirSync方法使用说明
Dec 17 Javascript
window.open()实现post传递参数
Mar 12 Javascript
js实现星星打分效果的方法
Jul 05 Javascript
jQuery插件imgPreviewQs实现上传图片预览
Jan 15 Javascript
jquery+json实现分页效果
Mar 07 Javascript
js css实现垂直方向自适应的三角提示菜单
Jun 26 Javascript
关于Vue实现组件信息的缓存问题
Aug 23 Javascript
微信小程序倒计时功能实例代码
Jul 17 Javascript
详解Angular中通过$location获取地址栏的参数
Aug 02 Javascript
vue中v-for循环给标签属性赋值的方法
Oct 18 Javascript
详解微信小程序scroll-view横向滚动的实践踩坑及隐藏其滚动条的实现
Mar 14 Javascript
javascript实现倒计时效果
Feb 17 Javascript
js 获取当前web应用的上下文路径实现方法
Aug 19 #Javascript
AngularJS入门教程之路由与多视图详解
Aug 19 #Javascript
AngularJS入门教程之链接与图片模板详解
Aug 19 #Javascript
AngularJS之依赖注入模拟实现
Aug 19 #Javascript
AngularJS入门教程之XHR和依赖注入详解
Aug 18 #Javascript
JavaScript中函数声明与函数表达式的区别详解
Aug 18 #Javascript
Javascript中apply、call、bind的巧妙使用
Aug 18 #Javascript
You might like
探讨:如何通过stats命令分析Memcached的内部状态
2013/06/14 PHP
linux中cd命令使用详解
2015/01/08 PHP
yii2中的rules 自定义验证规则详解
2016/04/19 PHP
php的4种常用运行方式详解
2016/12/22 PHP
Laravel项目中timeAgo字段语言转换的改善方法示例
2019/09/16 PHP
Ajax,UTF-8还是GB2312 eval 还是execScript
2008/11/13 Javascript
js判断设备是否为PC并调整图片大小
2014/02/12 Javascript
jQuery事件绑定on()、bind()与delegate() 方法详解
2015/06/03 Javascript
javascript实现在下拉列表中显示多级树形菜单的方法
2015/08/12 Javascript
JavaScript数组的一些奇葩行为
2016/01/25 Javascript
jQuery内容折叠效果插件用法实例分析(附demo源码)
2016/04/28 Javascript
利用JS实现文字的聚合动画效果
2017/01/22 Javascript
JavaScript内存泄漏的处理方式
2017/11/20 Javascript
jQuery实现列表的增加和删除功能
2018/06/14 jQuery
vue.js表单验证插件(vee-validate)的使用教程详解
2019/05/23 Javascript
七行JSON代码把你的网站变成移动应用过程详解
2019/07/09 Javascript
浅谈element中InfiniteScroll按需引入的一点注意事项
2020/06/05 Javascript
vue+elementui实现点击table中的单元格触发事件--弹框
2020/07/18 Javascript
[44:50]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 TNC vs VG
2018/04/02 DOTA
python实现嵌套列表平铺的两种方法
2018/11/08 Python
Python线性拟合实现函数与用法示例
2018/12/13 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
2019/04/29 Python
解决django后台样式丢失,css资源加载失败的问题
2019/06/11 Python
Python 中的 import 机制之实现远程导入模块
2019/10/29 Python
pip安装提示Twisted错误问题(Python3.6.4安装Twisted错误)
2020/05/09 Python
Python爬虫之Spider类用法简单介绍
2020/08/04 Python
详解H5本地储存Web Storage
2017/07/03 HTML / CSS
广州品高软件.net笔面试题目
2012/04/18 面试题
Java面试题:Java类的Main方法如果是Private将会怎么样
2016/08/18 面试题
中班中秋节活动反思
2014/02/18 职场文书
合同协议书格式
2014/04/18 职场文书
乡镇安全生产目标责任书
2014/07/23 职场文书
党的群众路线教育实践活动个人对照检查材料范文
2014/09/25 职场文书
2014年采购工作总结
2014/11/20 职场文书
苦儿流浪记读书笔记
2015/07/01 职场文书
2015年教师党员个人总结
2015/11/24 职场文书