導航:首頁 > 器材知識 > 如何通過js判斷設備類型

如何通過js判斷設備類型

發布時間:2024-06-28 11:21:49

『壹』 js如何判斷客戶端是iOS還是Android等移動終端

判斷原理:
JavaScript是前端開發的主要語言,我們可以通過編寫JavaScript程序來判斷瀏覽器的類型及版本。JavaScript判斷瀏覽器類型一般有兩種辦法,一種是根據各種瀏覽器獨有的屬性來分辨,另一種是通過分析瀏覽器的userAgent屬性來判斷的。在許多情況下,值判斷出瀏覽器類型之後,還需判斷瀏覽器版本才能處理兼容性問題,而判斷瀏覽器的版本一般只能通過分析瀏覽器的userAgent才能知道。

瀏覽器類型
⑴瀏覽器特有屬性
⑵根據userAgent
瀏覽器版本
⑴根據userAgent

對於手機瀏覽器判斷
1.如何判斷是否為移動終端 利用正則match,
匹配navigator.userAgent是否含有字元串AppleWebKit*****Mobile
安卓qq瀏覽器HD版 只有AppleWebKit
2手機語言版本的判斷
使用navigator.browserLanguage 便可得出windows phone語言版本,
當然可惡的小小手機語言版本也有兼容性的差異,兼容Mozilla,以及AppleWebKit內核的瀏覽器訪問其語言版本,它會列出 navigator.language
CODE:
<script type="text/javascript">
var browser={
versions:function(){
var u = navigator.userAgent, app = navigator.appVersion;
return { //移動終端瀏覽器版本信息
trident: u.indexOf('Trident') > -1, //IE內核
presto: u.indexOf('Presto') > -1, //opera內核
webKit: u.indexOf('AppleWebKit') > -1, //蘋果、谷歌內核
gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐內核
mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否為移動終端
ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios終端
android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android終端或uc瀏覽器
iPhone: u.indexOf('iPhone') > -1 , //是否為iPhone或者QQHD瀏覽器
iPad: u.indexOf('iPad') > -1, //是否iPad
webApp: u.indexOf('Safari') == -1 //是否web應該程序,沒有頭部與底部
};
}(),
language:(navigator.browserLanguage || navigator.language).toLowerCase()
}
document.writeln("語言版本: "+browser.language);
document.writeln(" 是否為移動終端: "+browser.versions.mobile);
document.writeln(" ios終端: "+browser.versions.ios);
document.writeln(" android終端: "+browser.versions.android);
document.writeln(" 是否為iPhone: "+browser.versions.iPhone);
document.writeln(" 是否iPad: "+browser.versions.iPad);
document.writeln(navigator.userAgent);
</script>

比較特別的地方
UC瀏覽器沒有安卓報頭,只返回:linux ,這里粗略的根據linux來判斷是安卓(前提必須滿足是移動終端,UC這點是滿足的)
安卓QQ瀏覽器HD版檢測的結果是:mac, Safari

『貳』 js如何判斷是移動設備,還是pc

<scripttype="text/javascript">
functionbrowserRedirect(){
varsUserAgent=navigator.userAgent.toLowerCase();
varbIsIpad=sUserAgent.match(/ipad/i)=="ipad";
varbIsIphoneOs=sUserAgent.match(/iphoneos/i)=="iphoneos";
varbIsMidp=sUserAgent.match(/midp/i)=="midp";
varbIsUc7=sUserAgent.match(/rv:1.2.3.4/i)=="rv:1.2.3.4";
varbIsUc=sUserAgent.match(/ucweb/i)=="ucweb";
varbIsAndroid=sUserAgent.match(/android/i)=="android";
varbIsCE=sUserAgent.match(/windowsce/i)=="windowsce";
varbIsWM=sUserAgent.match(/windowsmobile/i)=="windowsmobile";
document.writeln("您的瀏覽設備為:");
if(bIsIpad||bIsIphoneOs||bIsMidp||bIsUc7||bIsUc||bIsAndroid||bIsCE||bIsWM){
document.writeln("phone");
}else{
document.writeln("pc");
}
}

browserRedirect();
</script>

『叄』 js判斷蘋果12

前端開發會遇到判斷設備類型是否是蘋果端,記錄一下顫缺js代碼

var u = navigator.userAgent;
var isAndroid = u.indexOf('茄拆辯Android') > -1 || u.indexOf('御差Adr') > -1; //android終端
var isiOS = !!u.match(/\(i[^;]+;( U;

閱讀全文

與如何通過js判斷設備類型相關的資料

熱點內容
無氟製冷冰箱打壓用什麼氣 瀏覽:192
安裝上需要哪些大型機械設備 瀏覽:116
廣數怎麼把機床程序轉到u盤 瀏覽:146
串口如何判定某儀表是否存在 瀏覽:725
爆炸條件的探究實驗裝置 瀏覽:140
7526e型軸承內外徑是多少 瀏覽:255
電氣閥門定位器高清圖 瀏覽:427
深圳永昌電子五金製品有限公司 瀏覽:626
自動控制結構裝置圖 瀏覽:611
醫用設備如何分類 瀏覽:186
叔叔工具箱使用 瀏覽:962
機械廠液壓鉗工是干什麼的 瀏覽:492
機械表怎麼調星期幾 瀏覽:683
設備顏色是噴鮮綠色漆怎麼樣 瀏覽:737
mcc封裝怎麼製冷 瀏覽:527
五菱儀表盤碼表指針如何復位 瀏覽:644
整個起重裝置的機械效率 瀏覽:130
音響系統有哪些設備 瀏覽:610
閥門型號j41h什麼意思 瀏覽:989