1. ホーム
  2. javascript

[解決済み] JavaScriptで要素が本当に表示されているかどうかを確認するにはどうすればよいですか?重複

2022-08-03 23:13:46

質問

JavaScriptでは、ある要素が実際に表示されているかどうかをどのように確認するのでしょうか?

私は、単に visibilitydisplay という属性があります。つまり、その要素が

  • visibility: hidden または display: none
  • 他の要素の下に
  • 画面の端にスクロールされた

技術的な理由により、私はスクリプトを含めることができません。しかし プロトタイプ を使うことはできます。

どのように解決するのですか?

ポイント2について。

を使うことを提案した人はいないようですね。 document.elementFromPoint(x,y) を使うことを提案した人はいませんでしたが、私にとっては、ある要素が他の要素によってネストされているか隠されているかをテストする最も速い方法です。ターゲットとなる要素のオフセットを関数に渡すことができます。

以下は、PPKのテストページで elementFromPoint .

から MDN のドキュメント :

elementFromPoint() メソッド(DocumentとShadowRootオブジェクトの両方で利用可能)は、指定された座標(ビューポートからの相対座標)で最上位のElementを返します。