ホームページ >ウェブフロントエンド >jsチュートリアル >CSS 疑似要素のクリック イベントを検出できますか?

CSS 疑似要素のクリック イベントを検出できますか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-28 15:28:14851ブラウズ

Can You Detect Click Events on CSS Pseudo-Elements?

擬似要素のイベント検出をクリック

質問:

提供されたコードでは、クリック イベントは、疑似要素 (赤色のビット) とメイン要素 (青色のビット) の両方でトリガーされます。 少し)。ただし、目的は、擬似要素上のクリックのみを検出することです。これは可能ですか?

答え:

いいえ、擬似要素はドキュメント オブジェクトの一部として存在しないため、擬似要素上のクリック イベントを直接検出することはできません。モデル (DOM)。疑似要素はブラウザによって生成される仮想要素であり、実際の HTML 構造の一部ではありません。

代替アプローチ:

クリックを実装する必要がある場合赤い領域専用のハンドラーを作成するには、span などの子要素を作成します。

<p>
  <span class="red-bit"></span>
  Lorem ipsum dolor sit amet, ...
</p>

次に、スタイルを適用します。

.red-bit {
  position: absolute;
  left: 100%;
  width: 10px;
  height: 100%;
  background-color: red;
}

最後に、クリック ハンドラーを spam 要素にバインドします:

document.querySelector(".red-bit").addEventListener("click", function() {
  // Click handler code
});

このアプローチにより、クリックが発生するのを防ぎながら、赤い領域でのクリックをキャプチャできます。メイン要素でトリガーされます。

以上がCSS 疑似要素のクリック イベントを検出できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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