JSでAndroid携帯、iPhoneなどを判別する方法
スマートフォンページと、PCページをつくったはいいけど、
それぞれの専用ページにはそれぞれ適した端末からアクセスして欲しい。
そんな時はJavascriptでUserAgent判定して、以下のように記載します。
以下、PCサイトにスマートフォンからアクセスしてきた場合SPページに飛ばす処理。
<script type="text/javascript"> if ((navigator.userAgent.indexOf('iPhone') > 0 && navigator.userAgent.indexOf('iPad') == -1) || navigator.userAgent.indexOf('iPod') > 0 || (navigator.userAgent.indexOf('Android') > 0 && navigator.userAgent.indexOf('Mobile') > 0)) { location.href = './sp/'; </script>
ポイントは、Androidのみでの判定とするとAndroidタブレットも対象に入ってしまうため、Android携帯のみの判定を追加していること。
<script type="text/javascript"> (navigator.userAgent.indexOf('Android') > 0 && navigator.userAgent.indexOf('Mobile') > 0)) { location.href = './sp/'; </script>
判定式をまとめるとこんな感じ。
if (navigator.userAgent.indexOf('iPhone') > 0){ document.write("iPhoneっす"); } if (navigator.userAgent.indexOf('iPod') > 0){ document.write("iPodっす"); } if (navigator.userAgent.indexOf('Android') > 0){ document.write("Android総称っす"); } if (navigator.userAgent.indexOf('Android') > 0 && navigator.userAgent.indexOf('Mobile') == -1){ document.write("Androidタブレットっす"); } if (navigator.userAgent.indexOf('Android') > 0 && navigator.userAgent.indexOf('Mobile') > 0){ document.write("Android携帯っす"); }