您現在的位置是:網站首頁>JavascriptJS如何判斷瀏覽器類型和詳細區分IE各版本瀏覽器
JS如何判斷瀏覽器類型和詳細區分IE各版本瀏覽器
宸宸2024-04-13【Javascript】160人已圍觀
給尋找編程代碼教程的朋友們精選了JS相關的編程文章,網友勞天元根據主題投稿了本篇教程內容,涉及到js判斷瀏覽器類型、js、判斷瀏覽器、js如何判斷瀏覽器類型相關內容,已被494網友關注,涉獵到的知識點內容可以在下方電子書獲得。
今天用到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 && 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 } }
以上代碼通過測試,可用!
但存在一個問題,即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)"
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持碼辳之家。