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 相关文章推荐
JavaScript.Encode手动解码技巧
Jul 14 Javascript
jQuery根据纬度经度查看地图处理程序
May 08 Javascript
jQuery 绑定事件到动态创建的元素上的方法实例
Aug 18 Javascript
js取消单选按钮选中并判断对象是否为空
Nov 14 Javascript
基于javascript实现九宫格大转盘效果
May 28 Javascript
JS获取IE版本号与HTML设置IE文档模式的方法
Oct 09 Javascript
JSON与js对象序列化实例详解
Mar 16 Javascript
element ui 对话框el-dialog关闭事件详解
Feb 26 Javascript
解决Vue.js由于延时显示了{{message}}引用界面的问题
Aug 25 Javascript
纯javascript前端实现base64图片下载(兼容IE10+)
Sep 14 Javascript
微信小程序实现的picker多级联动功能示例
May 23 Javascript
解决VUE项目使用Element-ui 下拉组件的验证失效问题
Nov 07 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
与空气斗智斗勇的经典《Overlord》,传说中的“无稽之谈”
2020/04/09 日漫
php压缩多个CSS为一个css的代码并缓存
2011/04/21 PHP
PHP中数组定义的几种方法
2013/09/01 PHP
解决laravel 表单提交-POST 异常的问题
2019/10/15 PHP
javascript操作cookie_获取与修改代码
2009/05/21 Javascript
JavaScript.Encode手动解码技巧
2010/07/14 Javascript
js自定义事件及事件交互原理概述(二)
2013/02/01 Javascript
基于mouseout和mouseover等类似事件的冒泡问题解决方法
2013/11/18 Javascript
Javascript高级技巧分享
2014/02/25 Javascript
javascript实现仿腾讯游戏选择
2015/05/14 Javascript
JavaScript实现点击自动选择TextArea文本的方法
2015/07/02 Javascript
微信小程序 wxapp内容组件 progress详细介绍
2016/10/31 Javascript
Node.js中路径处理模块path详解
2016/11/14 Javascript
JS实现页面打印功能
2017/03/16 Javascript
深入理解React中何时使用箭头函数
2017/08/23 Javascript
React组件重构之嵌套+继承及高阶组件详解
2018/07/19 Javascript
小程序根据手机机型设置自定义底部导航距离
2019/06/04 Javascript
vue 翻页组件vue-flip-page效果
2020/02/05 Javascript
解决vue请求接口第一次成功,第二次失败问题
2020/09/08 Javascript
Python中声明只包含一个元素的元组数据方法
2014/08/25 Python
在Django的通用视图中处理Context的方法
2015/07/21 Python
Python抓取手机号归属地信息示例代码
2016/11/28 Python
Python基础教程之内置函数locals()和globals()用法分析
2018/03/16 Python
python使用Plotly绘图工具绘制气泡图
2019/04/01 Python
pyqt5 实现 下拉菜单 + 打开文件的示例代码
2019/06/20 Python
详解python编译器和解释器的区别
2019/06/24 Python
python 用opencv实现图像修复和图像金字塔
2020/11/27 Python
python飞机大战游戏实例讲解
2020/12/04 Python
使用CSS3制作一个简单的进度条(demo)
2017/05/23 HTML / CSS
亚马逊意大利站点:Amazon.it
2020/12/31 全球购物
广州品高软件.net笔面试题目
2012/04/18 面试题
党员服务承诺书
2014/05/28 职场文书
法定代表人授权委托书范文
2014/09/22 职场文书
PHP实现两种排课方式
2021/06/26 PHP
Grafana可视化监控系统结合SpringBoot使用
2022/04/19 Redis
Vue Element plus使用方法梳理
2022/12/24 Vue.js