今天用到JS判斷瀏覽器類型,于是就系統(tǒng)整理了一下,便于后期使用。
 /*   * 描述:判斷瀏覽器信息   * 編寫:LittleQiang_w   * 日期:2016.1.5   * 版本:V1.1   */   //判斷當(dāng)前瀏覽類型  function BrowserType()  {    var userAgent = navigator.userAgent; //取得瀏覽器的userAgent字符串    var isOpera = userAgent.indexOf("Opera") > -1; //判斷是否Opera瀏覽器    var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判斷是否IE瀏覽器    var isEdge = userAgent.indexOf("Windows NT 6.1; Trident/7.0;") > -1 && !isIE; //判斷是否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; //判斷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 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判斷是否IE瀏覽器    if(isIE)    {      return "1";    }    else    {      return "-1";    }   }         //判斷是否是IE瀏覽器,包括Edge瀏覽器   function IEVersion()   {    var userAgent = navigator.userAgent; //取得瀏覽器的userAgent字符串    var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判斷是否IE瀏覽器 var isEdge = userAgent.indexOf("Windows NT 6.1; Trident/7.0;") > -1 && !isIE; //判斷是否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    }   } 以上代碼通過測試,可用!
但存在一個(gè)問題,即IE5與IE7瀏覽器暫不能區(qū)分,以下是IE5與IE7下userAgent的信息;通過userAgent發(fā)現(xiàn),簡單的通過以上方法,無法正確區(qū)分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)"
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。
新聞熱點(diǎn)
疑難解答