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 isArray()函数判断对象类型的种种方法
Oct 11 Javascript
ASP.NET jQuery 实例15 通过控件CustomValidator验证CheckBoxList
Feb 03 Javascript
一个CSS+jQuery实现的放大缩小动画效果
Feb 19 Javascript
Python脚本后台运行的几种方式
Mar 09 Javascript
javascript实现动态导入js与css等静态资源文件的方法
Jul 25 Javascript
AngularJS入门教程之ng-checked 指令详解
Aug 01 Javascript
vue使用axios时关于this的指向问题详解
Dec 22 Javascript
jQuery中图片展示插件highslide.js的简单dom
Apr 22 jQuery
Angular4.x通过路由守卫进行路由重定向实现根据条件跳转到相应的页面(推荐)
May 10 Javascript
使用validate.js实现表单数据提交前的验证方法
Sep 04 Javascript
JS实现换肤功能的方法实例详解
Jan 30 Javascript
详解react组件通讯方式(多种)
May 06 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
sql注入与转义的php函数代码
2013/06/17 PHP
is_uploaded_file函数引发的不能上传文件问题
2013/10/29 PHP
PHP+iframe模拟Ajax上传文件功能示例
2019/07/02 PHP
PHP页面静态化――纯静态与伪静态用法详解
2020/06/05 PHP
Javascript遍历table中的元素示例代码
2014/07/08 Javascript
jQuery插件jcrop+Fileapi完美实现图片上传+裁剪+预览的代码分享
2015/04/22 Javascript
Javascript实现单例模式
2016/01/24 Javascript
Javascript随机标签云代码实例
2016/06/21 Javascript
模板视图和AngularJS之间冲突的解决方法
2016/11/22 Javascript
JS中用childNodes获取子元素换行会产生一个子元素
2016/12/08 Javascript
jquery 一键复制到剪切板的实例
2017/09/20 jQuery
JavaScript 判断对象中是否有某属性的常用方法
2018/06/14 Javascript
JS绘图Flot如何实现动态可刷新曲线图
2020/10/16 Javascript
js实现头像上传并且可预览提交
2020/12/25 Javascript
[58:29]DOTA2-DPC中国联赛 正赛 Phoenix vs XG BO3 第一场 1月31日
2021/03/11 DOTA
[01:05:07]DOTA2-DPC中国联赛 正赛 DLG vs Dragon BO3 第一场2月1日
2021/03/11 DOTA
python实现读取命令行参数的方法
2015/05/22 Python
python 去除txt文本中的空格、数字、特定字母等方法
2018/07/24 Python
Python爬虫爬取新浪微博内容示例【基于代理IP】
2018/08/03 Python
对python打乱数据集中X,y标签对的方法详解
2018/12/14 Python
python删除列表元素的三种方法(remove,pop,del)
2019/07/22 Python
wxPython窗体拆分布局基础组件
2019/11/19 Python
Pycharm使用远程linux服务器conda/python环境在本地运行的方法(图解))
2019/12/09 Python
python Manager 之dict KeyError问题的解决
2019/12/21 Python
python生成13位或16位时间戳以及反向解析时间戳的实例
2020/03/03 Python
pandas针对excel处理的实现
2021/01/15 Python
HTML5 Geolocation API的正确使用方法
2018/12/04 HTML / CSS
Pandora西班牙官方商店:PandoraShop.es
2020/10/05 全球购物
如何设定的weblogic的热启动模式(开发模式)与产品发布模式
2012/09/08 面试题
园长自我鉴定
2013/10/06 职场文书
学年自我鉴定
2014/01/16 职场文书
讲党性心得体会
2014/09/03 职场文书
2014年科室工作总结范文
2014/12/19 职场文书
专项资金申请报告
2015/05/15 职场文书
酒店宣传语大全
2015/07/13 职场文书
《落花生》教学反思
2016/02/16 职场文书