JS如何判断浏览器类型和详细区分IE各版本浏览器

【字号: 日期:2024-08-05浏览:74作者:雯心

今天用到JS判断浏览器类型,于是就系统整理了一下,便于后期使用。

/* * 描述:判断浏览器信息 * 编写:LittleQiang_w * 日期:2016.1.5 * 版本:V1.1 */ //判断当前浏览类型 function BrowserType() { var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 var isOpera = userAgent.indexOf('Opera') -1; //判断是否Opera浏览器 var isIE = userAgent.indexOf('compatible') -1 -1 //判断是否IE浏览器 var isEdge = userAgent.indexOf('Windows NT 6.1; Trident/7.0;') -1 //判断是否IE的Edge浏览器 var isFF = userAgent.indexOf('Firefox') -1; //判断是否Firefox浏览器 var isSafari = userAgent.indexOf('Safari') -1 //判断是否Safari浏览器 var isChrome = userAgent.indexOf('Chrome') -1 -1; //判断Chrome浏览器 if (isIE) { var reIE = new RegExp('MSIE (d+.d+);'); reIE.test(userAgent); var fIEVersion = parseFloat(RegExp['$1']); 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(fIEVersion == 11) { return 'IE11';} else { return '0'}//IE版本过低 }//isIE end if (isFF) { return 'FF';} if (isOpera) { return 'Opera';} if (isSafari) { return 'Safari';} if (isChrome) { return 'Chrome';} if (isEdge) { return 'Edge';} }//myBrowser() end //判断是否是IE浏览器 function isIE() { var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 var isIE = userAgent.indexOf('compatible') -1 -1 //判断是否IE浏览器 if(isIE) { return '1'; } else { return '-1'; } } //判断是否是IE浏览器,包括Edge浏览器 function IEVersion() { var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 var isIE = userAgent.indexOf('compatible') -1 -1 //判断是否IE浏览器 var isEdge = userAgent.indexOf('Windows NT 6.1; Trident/7.0;') -1 //判断是否IE的Edge浏览器 if(isIE) { var reIE = new RegExp('MSIE (d+.d+);'); reIE.test(userAgent); var fIEVersion = parseFloat(RegExp['$1']); 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(fIEVersion == 11) { return 'IE11';} else { return '0'}//IE版本过低 } else if(isEdge) { return 'Edge'; } else { return '-1';//非IE } }

以上代码通过测试,可用!

但存在一个问题,即IE5与IE7浏览器暂不能区分,以下是IE5与IE7下userAgent的信息;通过userAgent发现,简单的通过以上方法,无法正确区分IE5和IE7。期待该问题的解决方案!!!

IE5: userAgent 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; InfoPath.2; .NET4.0E)'

IE7: userAgent 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; InfoPath.2; .NET4.0E)'

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持乐呵呵网。

您可能感兴趣的文章:JS判断浏览器是否安装flash插件的简单方法使用JavaScript判断手机浏览器是横屏还是竖屏问题JavaScript判断是否是微信浏览器JS判断Android、iOS或浏览器的多种方法(四种方法)
标签: JavaScript
相关文章: