javascript
JS如何判断安卓还是iOS 一种比较被认同的方式
我們做前端開發時,需要JS判斷客戶端是否是iOS或者Android,那么什么方法最靠譜,多數人比較認同呢?我們可以通過userAgent來判斷,比如檢測某些關鍵字,例如:AppleWebKit*****Mobile或AppleWebKit,需要注意的是有些瀏覽器的userAgent中并不包含AppleWebKit關鍵字,可能會是Linux,UCBrowser等等。
下面是Javascript代碼:
<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.*/)||!!u.match(/AppleWebKit/), //是否為移動終端?
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 || u.indexOf('Mac') > -1, //是否為iPhone或者QQ HD瀏覽器?
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>
總結
以上是生活随笔為你收集整理的JS如何判断安卓还是iOS 一种比较被认同的方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一颗接一颗的飞鸽传书
- 下一篇: 我爸爸是个程序员