瀏覽器檢測JS代碼(兼容目前各大主流瀏覽器)
本文實例介紹了JS代碼實現(xiàn)瀏覽器檢測,分享給大家供大家參考,具體內容如下
var BrowserMatch = { init: function () { this.browser = this.getBrowser().browser || "An Unknown Browser"; this.version = this.getBrowser().version || "An Unknown Version"; this.OS = this.getOS() || "An Unknown OS"; }, getOS:function(){ if(navigator.platform.indexOf("Win")!= -1) return "Windows"; if(navigator.platform.indexOf("Mac")!= -1) return "Mac"; if(navigator.platform.indexOf("Linux")!= -1) return "Linux"; if(navigator.userAgent.indexOf("iPhone")!= -1) return "iPhone/iPod"; }, getBrowser:function () { var rMsie = /(msie\s|trident\/7)([\w\.]+)/; var rTrident = /(trident)\/([\w.]+)/; var rFirefox = /(firefox)\/([\w.]+)/; var rOpera = /(opera).+version\/([\w.]+)/; var rNewOpera = /(opr)\/(.+)/; var rChrome = /(chrome)\/([\w.]+)/; var rSafari = /version\/([\w.]+).*(safari)/; var ua = navigator.userAgent.toLowerCase(); var matchBS,matchBS2; matchBS = rMsie.exec(ua); if (matchBS != null) { matchBS2 = rTrident.exec(ua); if (matchBS2 != null){ switch (matchBS2[2]){ case "4.0": return { browser : "IE", version : "8" };break; case "5.0": return { browser : "IE", version : "9" };break; case "6.0": return { browser : "IE", version : "10" };break; case "7.0": return { browser : "IE", version : "11" };break; default:return { browser : "IE", version : "Undefined" }; } }else{ return {browser : "IE", version : matchBS[2] || "0" }; } } matchBS = rFirefox.exec(ua); if ((matchBS != null)&&(!(window.attachEvent))&&(!(window.chrome))&&(!(window.opera))) { return { browser : matchBS[1] || "", version : matchBS[2] || "0" }; } matchBS = rOpera.exec(ua); if ((matchBS != null)&&(!(window.attachEvent))) { return { browser : matchBS[1] || "", version : matchBS[2] || "0" }; } matchBS = rChrome.exec(ua); if ((matchBS != null)&&(!!(window.chrome))&&(!(window.attachEvent))) { matchBS2 = rNewOpera.exec(ua); if(matchBS2 == null){ return { browser : matchBS[1] || "", version : matchBS[2] || "0" }; }else{ return { browser : "Opera", version : matchBS2[2] || "0" }; } } matchBS = rSafari.exec(ua); if ((matchBS != null)&&(!(window.attachEvent))&&(!(window.chrome))&&(!(window.opera))) { return { browser : matchBS[2] || "", version : matchBS[1] || "0" }; } } }; BrowserMatch.init();
調用方法:(首先得引入js文件,大家應該都懂的)
獲取瀏覽器名:BrowserMatch.browser;
獲取瀏覽器版本:BrowserMatch.version;
獲取所處操作系統(tǒng):BrowserMatch.OS;
以上就是本文的全部內容,希望對大家的學習有所幫助。
- JS實現(xiàn)兼容各種瀏覽器的獲取選擇文本的方法【測試可用】
- JS實現(xiàn)兼容各種瀏覽器的高級拖動方法完整實例【測試可用】
- JS事件添加和移出的兼容寫法示例
- JS實現(xiàn)復制內容到剪貼板功能兼容所有瀏覽器(推薦)
- JS讀取XML文件數(shù)據(jù)并以table形式顯示數(shù)據(jù)的方法(兼容IE與火狐)
- JavaScript中解決多瀏覽器兼容性23個問題的快速解決方法
- 瀏覽器兼容的JS寫法總結
- 常用原生JS兼容性寫法匯總
- 淺析JavaScript中瀏覽器的兼容問題
- JavaScript 瀏覽器兼容性總結及常用瀏覽器兼容性分析
- JS實現(xiàn)pasteHTML兼容ie,firefox,chrome的方法
相關文章
使用JavaScript實現(xiàn)點擊循環(huán)切換圖片效果
本文通過實例代碼給大家介紹了通過js實現(xiàn)點擊循環(huán)切換圖片效果,需要的朋友參考下2017-09-09BootStrap實現(xiàn)帶有增刪改查功能的表格(DEMO詳解)
這篇文章主要介紹了BootStrap實現(xiàn)帶有增刪改查功能的表格,表格封裝了3個版本,接下來通過本文給大家展示下樣式及代碼,對bootstrap增刪改查相關知識感興趣的朋友一起通過本文學習吧2016-10-10javascript中Date format(js日期格式化)方法小結
這篇文章主要介紹了javascript中Date format,即js日期格式化的方法.實例總結了三種常見的JavaScript日期格式化技巧,需要的朋友可以參考下2015-12-12JavaScript Scoping and Hoisting 翻譯
希望這篇文章能夠給JavaScript程序員最容易困惑的部分一些啟示。我盡力寫的全面,以免引起更多的困惑。如果我寫錯了或是漏掉了某些重要的東西,請一定讓我知道2012-07-07js實現(xiàn)類似jquery里animate動畫效果的方法
這篇文章主要介紹了js實現(xiàn)類似jquery里animate動畫效果的方法,實例分析了javascript模擬實現(xiàn)jQuery中animate動畫效果的技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-04-04javascrit中undefined和null的區(qū)別詳解
這篇文章主要介紹了javascrit中undefined和null的區(qū)別詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-04-04