关于技术您现在的位置是:首页 > 关于技术
js判断浏览器类型,及IE的具体版本
2019-09-12 15:47:20 【Javascript, 浏览器】 24 人已围观 0 条评论
简介
使用场景 有时候我们在处理一些浏览器兼容性问题的时候,就需要获取所使用浏览器的类型; 网上有好多判断方法,但随 […]
使用场景
有时候我们在处理一些浏览器兼容性问题的时候,就需要获取所使用浏览器的类型;
网上有好多判断方法,但随着浏览器版本的升级,有些判断方法已经过时,通过网上查询整理了当前常用浏览器的判断方法:
(包括IE11及Edge浏览器)
解决方法
function BrowserType(flag) { var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 var isOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器 var isIE = !!window.ActiveXObject || "ActiveXObject" in window; //判断是否IE浏览器 var isEdge = userAgent.indexOf("Edge") > -1; //判断是否IE的Edge浏览器 var isFF = userAgent.indexOf("Firefox") > -1; //判断是否Firefox浏览器 var isSafari = userAgent.indexOf("Safari") > -1 && userAgent.indexOf("Chrome") == -1; //判断是否Safari浏览器 var isChrome = userAgent.indexOf("Chrome") > -1 && userAgent.indexOf("Safari") > -1 && !isEdge; //判断Chrome浏览器 if (isIE) { if (flag == true) { // 判断IE浏览器版本 var reIE = new RegExp("MSIE (\\d+\\.\\d+);"); reIE.test(userAgent); var fIEVersion = parseFloat(RegExp["$1"]); if(userAgent.indexOf('MSIE 6.0')!=-1) { return "IE6"; } else if(fIEVersion == 7) { return "IE7"; } else if(fIEVersion == 8) { return "IE8"; } else if(fIEVersion == 9) { return "IE9"; } else if(fIEVersion == 10) { return "IE10"; } else if(userAgent.toLowerCase().match(/rv:([\d.]+)\) like gecko/)) { return "IE11"; } else { return "较低版本的IE"; } } else { // 仅判断浏览器类型 return "IE"; } } if (isFF) { return "Firefox";} if (isOpera) { return "Opera";} if (isSafari) { return "Safari";} if (isChrome) { return "Chrome";} if (isEdge) { return "Edge";} }
函数调用
执行函数 BrowserType() 返回浏览器类型;
如果想获取IE浏览器版本信息,调用函数 BrowserType(true) ,加上参数true即可,IE浏览器将返回版本信息。
我们,加油!
上一篇: IE浏览器下,鼠标经过弹出下拉框,点击下拉框中的select后下拉框隐藏的问题
已是最新文章