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 相关文章推荐
ECMAScript6中Set/WeakSet详解
Jun 12 Javascript
JavaScript中的return语句简单介绍
Dec 07 Javascript
ECharts仪表盘实例代码(附源码下载)
Feb 18 Javascript
javascript+HTML5 Canvas绘制转盘抽奖
May 16 Javascript
BootStrap glyphicon图标无法显示的解决方法
Sep 06 Javascript
jQuery返回定位插件详解
May 15 jQuery
Vue-Router进阶之滚动行为详解
Sep 13 Javascript
react-native封装插件swiper的使用方法
Mar 20 Javascript
vuex 的简单使用
Mar 22 Javascript
JS实现json对象数组按对象属性排序操作示例
May 18 Javascript
Layui弹框中数据表格中可双击选择一条数据的实现
May 06 Javascript
让你30分钟快速掌握vue3教程
Oct 26 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
什么情况下可以不写PHP的闭合标签“?&gt;”
2014/08/28 PHP
PHP中phar包的使用教程
2017/06/14 PHP
PHP实现批量重命名某个文件夹下所有文件的方法
2017/09/04 PHP
面向对象Javascript核心支持代码分享
2012/05/23 Javascript
正负小数点后两位浮点数实现原理及代码
2013/09/06 Javascript
兼容FF和IE的动态table示例自写
2013/10/21 Javascript
jquery如何实现锚点链接之间的平滑滚动
2013/12/02 Javascript
JS对象转换为Jquery对象实现代码
2013/12/29 Javascript
js 加密压缩出现bug解决方案
2014/11/25 Javascript
javascript事件模型实例分析
2015/01/30 Javascript
JavaScript控制两个列表框listbox左右交换数据的方法
2015/03/18 Javascript
10个JavaScript中易犯小错误
2016/02/14 Javascript
使用Object.defineProperty实现简单的js双向绑定
2016/04/15 Javascript
Vue自定义指令介绍(2)
2016/12/08 Javascript
浅谈JavaScript中的apply/call/bind和this的使用
2017/02/26 Javascript
layui递归实现动态左侧菜单
2019/07/26 Javascript
结合axios对项目中的api请求进行封装操作
2020/09/21 Javascript
[58:25]VP vs RNG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Python利用pyHook实现监听用户鼠标与键盘事件
2014/08/21 Python
举例详解Python中的split()函数的使用方法
2015/04/07 Python
关于Python正则表达式 findall函数问题详解
2018/03/22 Python
python实现连续图文识别
2018/12/18 Python
Python列表去重复项的N种方法(实例代码)
2020/05/12 Python
总结Pyinstaller的坑及终极解决方法(小结)
2020/09/21 Python
selenium学习教程之定位以及切换frame(iframe)
2021/01/04 Python
HTML高亮关键字的实现代码
2018/10/22 HTML / CSS
日本航空官方网站:JAL
2019/06/19 全球购物
下列程序在32位linux或unix中的结果是什么
2015/01/26 面试题
教师实习自我鉴定
2013/12/13 职场文书
雪山饭庄的创业计划书范文
2014/01/18 职场文书
应届大学生求职信
2014/07/20 职场文书
社区精神文明建设汇报材料
2014/08/17 职场文书
承诺书样本
2014/08/30 职场文书
高中生打架检讨书1000字
2015/02/17 职场文书
勇敢的心观后感
2015/06/09 职场文书
HTML5 语义化标签(移动端必备)
2021/08/23 HTML / CSS