
iPadのみ適用したい処理があるんだけどどうしたらいい?
画面幅によって処理を変えるのはレスポンシブ対応が出来れば簡単ですが、同じ画面幅でもiPadでは処理を変えたいという事があるかも知れません。
今回はその方法をご紹介します。
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を使った本体の読み込み方についても分かりやすく解説
続きを見る
まとめ
今回はJavaScriptでiPadを判定するuserAgentの書き方を解説しました。
あまり使う機会はないかも知れませんが、実際に実務で使った事があるので覚えておいて損はないかと思います。
以上になります。
コーディングの時給と作業効率を上げる!
2年間の実務で実際に使ったコードをまとめた『コーディング&WordPressメモまとめ集』をBrainで公開しています。※ 4月15日に値上げ予定
- コピペで使えるWordPressの各テンプレート
- 実務でよく使う見出し一覧
- 実務でよく使うテキストのhoverアニメーション
- 実務でよく使うボタン内の矢印9種類
- Contact Form 7の色々・・・
などなど、他にもコピペで使えるコードがたくさん載せてあるので、時短=時給アップに繋がります。
さらに『コードのまとめ方が参考になった』というレビューも多数頂いているので、これを元に自分なりの"メモまとめ集"を作るという使い方も出来ます。
830部以上販売し、レビューは450件以上あるので、気になる方は以下のボタンからチェックしてみて下さい👇
今だけ!5大無料特典あり🎁