[解決済み] JavaScriptで「タッチパネル」デバイスを検出する最適な方法とは?
2022-03-20 17:41:50
質問
デスクトップとモバイルの両方で使用するためのjQueryプラグインを書きました。デバイスがタッチスクリーン機能を備えているかどうかを、JavaScriptで検出する方法はないでしょうか。タッチスクリーンイベントを検出するためにjquery-mobile.jsを使用しており、iOS、Androidなどで動作していますが、ユーザーのデバイスがタッチスクリーンであるかどうかに基づいて条件文を書きたいと考えています。
それは可能ですか?
どのように解決するのですか?
更新情報:こちらをご覧ください blmstrの回答 機能検出ライブラリ全体をプロジェクトに取り込む前に、以下をご覧ください。実際のタッチサポートの検出はより複雑であり、Modernizr は基本的な使用例のみをカバーしています。
モダナイザー は、あらゆるサイトであらゆる種類の機能検出を行うための、偉大で軽量な方法です。
各機能に対応したクラスをhtml要素に追加していくだけです。
そうすれば、CSSやJSで簡単にそれらの機能をターゲットにすることができます。例えば
html.touch div {
width: 480px;
}
html.no-touch div {
width: auto;
}
そして、Javascript(jQueryの例)。
$('html.touch #popup').hide();
関連
-
vueディレクティブv-bindの使用と注意点
-
vueにおけるfilterの適用シーンについて解説します。
-
[解決済み】JavaScriptの配列でforEachが関数でない不具合
-
[解決済み] let "と "var "の使い分けは?
-
[解決済み] JavaScriptでオブジェクトをディープクローンする最も効率的な方法は何ですか?
-
[解決済み] モバイル端末の検出にはどのような方法がありますか?
-
[解決済み] JavaScriptでページの一番上までスクロールする?
-
[解決済み] jQueryでJavaScriptオブジェクトから選択する際に、オプションを追加する最も良い方法は何ですか?
-
[解決済み] JavaScriptで数値を文字列に変換するのに最適な方法は何ですか?
-
[解決済み] JavaScriptでネストしたループから抜け出すには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
jsを使った簡単な照明スイッチのコード
-
vueディレクティブv-bindの使用と注意点
-
vueにおけるv-forループオブジェクトのプロパティ
-
Vueの「データを聴く」原則を解説
-
nodejs unhandledPromiseRejectionWarning メッセージ
-
フロントエンド null のプロパティ 'disabled' を読み取れない 問題が解決された
-
JavaScriptのgetElementById、getElementsByTagNam、getElementsByClassNameの違いと使い方
-
[解決済み] モバイル端末の検出にはどのような方法がありますか?
-
[解決済み] [Solved] 'touchstart'と'click'イベントをバインドして、両方に反応しないようにするにはどうしたらいいですか?
-
[解決済み】タッチデバイスで:hoverのCSSスタイルを削除/無視する方法