JS判斷瀏覽器類型與操作系統(tǒng)的方法分析
本文實例講述了JS判斷瀏覽器類型與操作系統(tǒng)的方法。分享給大家供大家參考,具體如下:
navigator.userAgent : userAgent 屬性是一個只讀的字符串,聲明了瀏覽器用于 HTTP 請求的用戶代理頭的值。
navigator.platform : platform 屬性是一個只讀的字符串,聲明了運行瀏覽器的操作系統(tǒng)和(或)硬件平臺。
判斷瀏覽器類型
IE瀏覽器
ie = ua.match( /MSIE\s([\d\.]+)/ ) || ua.match( /(?:trident)(?:.*rv:([\w.]+))?/i ),
IE瀏覽器版本號
/msie 8.0/.test(navigator.userAgent.toLowerCase())
微信瀏覽器
/micromessenger/.test(navigator.userAgent.toLowerCase())
chrome
/chrome/.test(navigator.userAgent.toLowerCase())
firefox
/safari/.test(navigator.userAgent.toLowerCase())
opera
/micromessgenger/.test(navigator.userAgent.toLowerCase())
判斷操作系統(tǒng)類型
win操作系統(tǒng)
navigator.platform == "Win32" navigator.platform == "Windows"
mac操作系統(tǒng)
navigator.platform == "Mac68K" navigator.platform == "MacPPC" navigator.platform == "Macintosh" navigator.platform == "MacIntel"
andorid操作系統(tǒng)
if(/Linux/i.test(navigator.userAgent)){
if(/android/i.test(navigator.userAgent.toLowerCase())){
return "android";
}
}
/**
* @description 簡單的瀏覽器檢查結(jié)果。
*
* * `webkit` webkit版本號,如果瀏覽器為非webkit內(nèi)核,此屬性為`undefined`。
* * `chrome` chrome瀏覽器版本號,如果瀏覽器為chrome,此屬性為`undefined`。
* * `ie` ie瀏覽器版本號,如果瀏覽器為非ie,此屬性為`undefined`。**暫不支持ie10+**
* * `firefox` firefox瀏覽器版本號,如果瀏覽器為非firefox,此屬性為`undefined`。
* * `safari` safari瀏覽器版本號,如果瀏覽器為非safari,此屬性為`undefined`。
* * `opera` opera瀏覽器版本號,如果瀏覽器為非opera,此屬性為`undefined`。
*
* @property {Object} [browser]
*/
browser: (function( ua ) {
var ret = {},
webkit = ua.match( /WebKit\/([\d.]+)/ ),
chrome = ua.match( /Chrome\/([\d.]+)/ ) ||
ua.match( /CriOS\/([\d.]+)/ ),
ie = ua.match( /MSIE\s([\d\.]+)/ ) ||
ua.match( /(?:trident)(?:.*rv:([\w.]+))?/i ),
firefox = ua.match( /Firefox\/([\d.]+)/ ),
safari = ua.match( /Safari\/([\d.]+)/ ),
opera = ua.match( /OPR\/([\d.]+)/ );
webkit && (ret.webkit = parseFloat( webkit[ 1 ] ));
chrome && (ret.chrome = parseFloat( chrome[ 1 ] ));
ie && (ret.ie = parseFloat( ie[ 1 ] ));
firefox && (ret.firefox = parseFloat( firefox[ 1 ] ));
safari && (ret.safari = parseFloat( safari[ 1 ] ));
opera && (ret.opera = parseFloat( opera[ 1 ] ));
return ret;
})( navigator.userAgent ),
/**
* @description 操作系統(tǒng)檢查結(jié)果。
*
* * `android` 如果在android瀏覽器環(huán)境下,此值為對應(yīng)的android版本號,否則為`undefined`。
* * `ios` 如果在ios瀏覽器環(huán)境下,此值為對應(yīng)的ios版本號,否則為`undefined`。
* @property {Object} [os]
*/
os: (function( ua ) {
var ret = {},
// osx = !!ua.match( /\(Macintosh\; Intel / ),
android = ua.match( /(?:Android);?[\s\/]+([\d.]+)?/ ),
ios = ua.match( /(?:iPad|iPod|iPhone).*OS\s([\d_]+)/ );
// osx && (ret.osx = true);
android && (ret.android = parseFloat( android[ 1 ] ));
ios && (ret.ios = parseFloat( ios[ 1 ].replace( /_/g, '.' ) ));
return ret;
})( navigator.userAgent ),
PS:這里再為大家提供幾款相關(guān)在線工具供大家參考:
在線瀏覽器信息檢測工具:
http://tools.jb51.net/aideddesign/browser_info
常用瀏覽器(PC,移動) user-agent:
http://tools.jb51.net/table/useragent
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript事件相關(guān)操作與技巧大全》、《JavaScript頁面元素操作技巧總結(jié)》、《JavaScript操作DOM技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript錯誤與調(diào)試技巧總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計有所幫助。
- JS如何判斷瀏覽器類型和詳細區(qū)分IE各版本瀏覽器
- 利用JavaScript判斷瀏覽器類型及版本
- js根據(jù)手機客戶端瀏覽器類型,判斷跳轉(zhuǎn)官網(wǎng)/手機網(wǎng)站多個實例代碼
- js/jquery判斷瀏覽器類型的方法小結(jié)
- js判斷當前瀏覽器類型,判斷IE瀏覽器方法
- 利用js判斷瀏覽器類型(是否為IE,Firefox,Opera瀏覽器)
- js如何判斷不同系統(tǒng)的瀏覽器類型
- js判斷手機瀏覽器操作系統(tǒng)和微信瀏覽器的方法
- 封裝好的js判斷操作系統(tǒng)與瀏覽器代碼分享
- 利用Javascript判斷操作系統(tǒng)的類型實現(xiàn)不同操作系統(tǒng)下的兼容性
相關(guān)文章
layer的prompt彈出框,點擊回車,觸發(fā)確定事件的方法
今天小編就為大家分享一篇layer的prompt彈出框,點擊回車,觸發(fā)確定事件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09
JavaScript實現(xiàn)三級級聯(lián)特效
這篇文章主要介紹了JavaScript實現(xiàn)三級級聯(lián)特效,選擇省會出現(xiàn)相應(yīng)的縣下拉框,同時市的下拉框改變,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-11-11
前端使用JavaScript結(jié)合CSS實現(xiàn)3D旋轉(zhuǎn)跟隨鼠標變化
這篇文章主要介紹了前端使用JavaScript結(jié)合CSS實現(xiàn)3D旋轉(zhuǎn)跟隨鼠標變化,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧2023-01-01
javascript判斷兩個IP地址是否在同一個網(wǎng)段的實現(xiàn)思路
要判斷兩個IP地址是否在同一個網(wǎng)段,將它們的IP地址分別與子網(wǎng)掩碼做與運算,得到的結(jié)果為網(wǎng)絡(luò)號,具體實現(xiàn)如下,需要的朋友可以參考下2013-12-12
JavaScript中正則表達式判斷匹配規(guī)則及常用方法
JS作為一門常用于web開發(fā)的語言,必然要具備正則這種強大的特性,本文將對JS中的正則用法及常用函數(shù)進行一番總結(jié)2017-08-08
一起來了解一下JavaScript的預(yù)編譯(小結(jié))
這篇文章主要介紹了一起來了解一下JavaScript的預(yù)編譯(小結(jié)),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-03-03

