Web制作 JavaScript

【JavaScript】iPadを判定するuserAgent(ユーザーエージェント)の書き方【iOS13以降対応】

iPadのみ適用したい処理があるんだけどどうしたらいい?

画面幅によって処理を変えるのはレスポンシブ対応が出来れば簡単ですが、同じ画面幅でもiPadでは処理を変えたいという事があるかも知れません。

今回はその方法をご紹介します。

今だけ!5大無料特典あり🎁

コーディングの時給アップにはこちら!


iPadを判定するuserAgent(ユーザーエージェント)の書き方【iOS13以降対応】

まずはこちらも見て下さい。

See the Pen
by junpei (@junpei-sugiyama)
on CodePen.

パソコンやスマホで見ている方は『これはiPad以外です』と表示されていると思います。

そしてiPadで見ている人はこれはiPadです』と赤字で表示されていると思います。

 

コード解説

それではコードを見てみます。

まずはHTMLとCSSです。

<div class="container">
  <p class="ipad">これはiPadです</p>
  <p class="no-ipad">これはiPad以外です</p>
</div>
.container {
  margin-top: 50px;
}
p {
  font-size: 30px;
  font-weight: 700;
  text-align: center;
}
.ipad {
  display: none;
}

ここで見るべきところはCSSの最後です。

これはiPadで表示されるテキストを通常非表示としています。

そして重要なのはjsになります。

// iPad判別
var ua = window.navigator.userAgent.toLowerCase();
if (
  ua.indexOf("ipad") > -1 ||
  (ua.indexOf("macintosh") > -1 && "ontouchend" in document)
) {
  // iPadでの処理
  $(".ipad").css("display", "block");
  $(".ipad").css("color", "red");
  $(".no-ipad").css("display", "none");
}

最後の3行でiPadでの処理を書いています。

  • 1行目:class名『iPad』を表示させる
  • 2行目:class名『iPad』のフォントを赤色にする
  • 3行目:class名『no-ipad』を非表示にする

となります。

今回はCSSのプロパティを変更しただけですが、classの付け替えなど色んな処理が出来ます(ここではiPadでの処理の部分はjQueryを使用しているので、jQuery本体の読み込みを忘れないようにして下さい)

jQueryを使ったことがない人はこちらの記事を参照下さい。

参考記事
【初心者向け】jQueryとは?CDNを使った本体の読み込み方についても分かりやすく解説
【初心者向け】jQueryとは?CDNを使った本体の読み込み方についても分かりやすく解説

続きを見る

以上になります。

あまり使う機会はないかも知れませんが、実際実務でも使った事があるので覚えておいて損はないかと思います。

 

コーディングの時給と作業効率を上げる!
2年間の実務で実際に使ったコードをまとめた『コーディング&WordPressメモまとめ集』をBrainで公開しています。
  • コピペで使えるWordPressの各テンプレート
  • 実務でよく使う見出し一覧
  • 実務でよく使うテキストのhoverアニメーション
  • 実務でよく使うボタン内の矢印9種類
  • Contact Form 7の色々・・・
などなど、他にもコピペで使えるコードがたくさん載せてあるので、時短=時給アップに繋がります。
さらに『コードのまとめ方が参考になった』というレビューも多数頂いているので、これを元に自分なりの"メモまとめ集"を作るという使い方も出来ます。
レビューは390件以上あるので、気になる方は以下のボタンからチェックしてみて下さい👇

今だけ!5大無料特典あり🎁

販売ページとレビューを見てみる


ブログランキング・にほんブログ村へ
  • この記事を書いた人

じゅんぺい

タイ・バンコク在住のWeb制作フリーランス兼ブロガー▶︎37歳からWeb制作を開始▶︎コーディングとWordPressのオリジナルテーマ制作でこれまで80件以上納品▶︎Web制作中心の当ブログは月間最高8.4万PV▶︎Twitterのフォロワーは6100人▶︎コーディングとWordPressのコンテンツを販売し、3日で500部突破&250万円&人気1位獲得 → 累計700部&420万円突破

-Web制作, JavaScript