menu
menu

キーワード検索

 

前月(8月)の人気記事トップ10

  1. ( 1-) 【CSS Tips】CSSだけでドロップダウンメニュー
  2. ( 2-) 【CSS Tips】CSSだけでサイズ可変・スマホ対応のアコーディオン
  3. ( 3-) 【HTML5 Tips】スマホサイトの作成・基本編
  4. ( 4-) 【CSS Tips】CSSだけでブロック要素の表示非表示(トグルボタン)
  5. ( 5-) 【実践でjQuery入門】jQueryで日時を表示
  6. ( 7↑) 【制作Tips】スマホサイト向け横にスクロールするナビゲーション
  7. ( 6↓) 【JavaScript Tips】表示しているブラウザの高さを取得してCSSのheightに指定
  8. ( -↑) 【Mac Tips】MacにInkscapeをインストール
  9. ( 9-) 【MySQL】Windows 10にMySQLをインストール
  10. ( 8↓) 【HTML5】HTML5・ページ作成の基本

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

  • Labs

JavaScript

こんにちは(・∀・)

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です。

サンプル
HTML

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

サンプルデモはこちら


関連リンク

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

  • カテゴリー:Labs