【Labs】スマホ・タブレット・PCを振り分ける - web design lab
にほんブログ村 デザインブログ Webデザインへ PVアクセスランキング にほんブログ村

【Labs】スマホ・タブレット・PCを振り分ける


【Labs】スマホ・タブレット・PCを振り分ける

こんにちは(・∀・)

JavaScriptでスマホやタブレットそれとPCを振り分ける方法をご紹介します。

Contents

1. ユーザーエージェントで振り分けたい
  ①スマホ・タブレット・PCで振り分けるサンプル
  ②スマホやタブレットをもっと細かく振り分けるサンプル
2. デバイスサイズで振り分けたい

1. ユーザーエージェントで振り分けたい

ユーザーエージェントで振り分けるJavaScriptです。

①スマホ・タブレット・PCで振り分けるサンプル
JavaScript

var ua = navigator.userAgent;
if( ua.indexOf('iPhone') > 0 || ua.indexOf('iPod') > 0 || (ua.indexOf('Android') > 0 && ua.indexOf('Mobile') > 0) || ( ua.indexOf('windows') > 0 && ua.indexOf('phone') > 0) || ( ua.indexOf('firefox') > 0 && ua.indexOf('mobile') > 0) ) {
alert("iPhone/iPod touch/Android Mobile/Windows Phone/Firefox OSで見てますね。");
/*document.write('<link rel="stylesheet" href="sp.css">');CSSを切り替える場合。*/
/*location.href = '/sp/';ディレクトリを振り分ける場合。*/
} else if( ua.indexOf('iPad') > 0 || ua.indexOf('Android') > 0 || (ua.indexOf('windows') > 0 && ua.indexOf('touch') > 0) || ( ua.indexOf('firefox') > 0 && ua.indexOf('tablet') > 0) ) {
alert("iPad/Android Tablet/Windows Tablet/Firefox Tabletで見てますね。");
/*document.write('<link rel="stylesheet" href="tablet.css">');CSSを切り替える場合。*/
/*location.href = '/tablet/';ディレクトリを振り分ける場合。*/
} else {
alert("PCで見てますね。");
/*document.write('<link rel="stylesheet" href="pc.css">');CSSを切り替える場合。*/
/*location.href = '/pc/';ディレクトリを振り分ける場合。*/
}
Result

サンプルデモ

②スマホやタブレットをもっと細かく振り分けるサンプル
JavaScript

var ua = navigator.userAgent;
if( ua.indexOf('iPhone') > 0 ) {
alert("iPhoneで見てますね。");
} else if( ua.indexOf('iPod') > 0 ) {
alert("iPod touchで見てますね。");
} else if( ua.indexOf('Android') > 0 && ua.indexOf('Mobile') > 0 ) {
alert("Android Mobileで見てますね。");
} else if( ua.indexOf('windows') > 0 && ua.indexOf('phone') > 0 ) {
alert("Windows Phoneで見てますね。");
} else if( ua.indexOf('firefox') > 0 && ua.indexOf('mobile') > 0 ) {
alert("Firefox OSで見てますね。");
} else if( ua.indexOf('iPad') > 0 ) {
alert("iPadで見てますね。");
} else if( ua.indexOf('Android') > 0 ) {
alert("Android Tabletで見てますね。");
} else if( ua.indexOf('windows') > 0 && ua.indexOf('touch') > 0 ) {
alert("Windows Tabletで見てますね。");
} else if( ua.indexOf('firefox') > 0 && ua.indexOf('tablet') > 0 ) {
alert("Firefox Tabletで見てますね。");
} else {
alert("PCで見てますね。");
}
Result

サンプルデモ

2. デバイスサイズで振り分けたい

デバイスサイズで振り分けるこちらはjQueryです。

サンプル

Google Hosted LibrariesからjQuery 1.x snippetを<head>内に読み込みます。


<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
JavaScript

$(window).load(function(){
var w = $(window).width();
var x = 769;
if (w <= x) {//769pxより小さい時
alert("769pxより小さい画面で見てますね。");
} else {//769pxより大きい時
alert("769pxより大きい画面で見てますね。");
}
});
Result

サンプルデモ

関連リンク

【Labs】クッキーでスマホ・タブレット・PCを振り分ける
【Guide】スマホサイトの作成・レスポンシブデザイン


にほんブログ村 デザインブログ Webデザインへ PVアクセスランキング にほんブログ村