業(yè)務(wù)需求上,經(jīng)常會(huì)有移動(dòng)端添加引導(dǎo)下載app,IOS引導(dǎo)到app store,安卓引導(dǎo)到應(yīng)用寶等。
檢測(cè)當(dāng)前設(shè)備是否為移動(dòng)端,是否為IOS系統(tǒng)
核心是利用userAgent
| 檢測(cè)源 | code |
|---|---|
| 是否為移動(dòng)端 | !!navigator.userAgent.match(/AppleWebKit.Mobile./) |
| 是否為IOS | !!navigator.userAgent.match(/(i[^;]+;( U;)? CPU.+Mac OS X/) |
| 檢測(cè)瀏覽器語言 | navigator.language |
| 檢測(cè)瀏覽器語言(非IE) | navigator.browserLanguage |
在線demo,可點(diǎn)擊
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>systemCheck</title>
</head>
<body>
<p>判斷當(dāng)前設(shè)備的情況,是否是移動(dòng)端,是否為IOS系統(tǒng)</p>
<p id="systemResult"></p>
</body>
<script>
// 判斷是否為移動(dòng)端
var u = navigator.userAgent;
var systemResult = document.querySelector("#systemResult");
if(!!u.match(/AppleWebKit.*Mobile.*/)) {
if(!!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)) {
systemResult.innerText = "當(dāng)前設(shè)備為Mobile,為IOS系統(tǒng)";
} else {
systemResult.innerText = "當(dāng)前設(shè)備為Mobile,非IOS系統(tǒng)";
}
} else {
systemResult.innerText = "當(dāng)前設(shè)備非Mobile";
}
</script>
</html>