ホームページ >ウェブフロントエンド >jsチュートリアル >長押しを使用してタッチスクリーン上でホバー効果をシミュレートする方法?

長押しを使用してタッチスクリーン上でホバー効果をシミュレートする方法?

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-22 19:00:201071ブラウズ

How to Simulate Hover Effects on Touchscreens Using Long Press?

長押しを使用してタッチ対応デバイスでホバー エフェクトをトリガーする

スマートフォンやタブレットなどのタッチ対応デバイスでホバー エフェクトを複製するにはでは、CSS と JavaScript を組み合わせて利用できます。その仕組みは次のとおりです。

HTML マークアップ

ホバー効果を適用したい要素に「hover」という名前のクラスを追加します。例:

<code class="html"><p class="hover">Some Text</p></code>

CSS スタイル

CSS を変更して、:hover クラスと .hover_effect クラスの両方にホバー効果を含めます。 .hover_effect クラスは、タッチ デバイスでのホバー効果をシミュレートするために使用されます。

<code class="css">p {
  color: black;
}

p:hover, p.hover_effect {
  color: red;
}</code>

JavaScript

JavaScript を使用して長押しイベントを検出します。 jQuery を使用した例を次に示します。

<code class="javascript">$(document).ready(function() {
  $('.hover').on('touchstart touchend', function(e) {
    e.preventDefault();
    $(this).toggleClass('hover_effect');
  });
});</code>

この JavaScript コードは、「hover」クラスを持つ要素に touchstart イベントと touchend イベントのイベント ハンドラーを追加します。タッチが開始または終了すると、タッチされた要素の hover_effect クラスが切り替わります。

追加の CSS

ブラウザがコンテキスト メニューを表示したり、タッチ時に確認を求めたりしないようにするためモバイル デバイス上の要素をタッチするには、次の CSS ルールを追加します:

<code class="css">.hover {
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}</code>

Result

これらの要素を組み合わせることで、タッチ対応のホバー効果をシミュレートできるようになりました。目的の要素を長押ししてデバイスを選択します。この方法を使用すると、従来のマウスホバーを必要とせずに、ボタンやリンクなどのインタラクティブな要素を作成できます。

以上が長押しを使用してタッチスクリーン上でホバー効果をシミュレートする方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。