各种浏览器类型的判断


最近做一个功能,需要判断用的是哪种浏览器。其实主要是要判断IE的各种版本还有火狐、谷歌浏览器。然后就借此机会通过分析各种浏览器的navigator.userAgent的不同把其它浏览器也一起做了区别。每一种浏览器基本上都是安装了当时的最新的版本,然后查看了userAgent(如果一种浏览器的不同版本的userAgent不一样,那我就没去考虑了)。由于各个浏览器的userAgent里面会包含有一些相同的字眼(比如很多浏览器的userAgent都有chrome字眼),所以判断的顺序也是很重要,不能乱。

代码

function getBrowserType(){
    var agent = navigator.userAgent.toLowerCase();    
if(agent.indexOf("msie 7.0") > -1){

return
"IE7"; } if(agent.indexOf("msie 8.0") > -1){ return "IE8"; }
if(agent.indexOf("msie 9.0") > -1){ return "IE9"; } if(agent.indexOf("msie 10.0") > -1){ return "IE10"; } if(agent.indexOf("rv:11.0") > -1){
   return "IE11";
}
   if(agent.indexOf('Edge') > -1){
return "IEEDGE"; }
if(agent.indexOf("firefox") > -1){ return "FIREFOX"; } if(agent.indexOf("qqbrowser") > -1){ return "QQ"; } if(agent.indexOf("bidubrowser") > -1){ return "BAIDU"; } if(agent.indexOf("maxthon") > -1){ return "MAXTHON"; } if(agent.indexOf("metasr") > -1){ return "SOUGOU"; } if(agent.indexOf("opr") > -1){ return "OPEAR"; } if(agent.indexOf("safari") > -1 && agent.indexOf("chrome") == -1){ return "SAFARI"; } if(agent.indexOf("chrome") > -1){ return "CHROME"; } //猎豹,360浏览器无法通过userAgent判断 }