Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimanakah Saya Boleh Menentukan jika Elemen Hadir dalam DOM Kelihatan?

Bagaimanakah Saya Boleh Menentukan jika Elemen Hadir dalam DOM Kelihatan?

Barbara Streisand
Barbara Streisandasal
2024-10-21 22:13:30391semak imbas

How Can I Determine if an Element is Present in the Visible DOM?

Cara Memeriksa Sama ada Elemen Wujud dalam DOM Nampak

Mencari elemen dalam DOM menggunakan IDnya ialah tugas biasa dalam JavaScript. Walau bagaimanapun, bagaimana jika anda perlu menyemak kewujudan elemen tanpa menggunakan kaedah ini?

Mengenal pasti Elemen Halimunan

Apabila elemen dialih keluar daripada DOM, rujukannya dalam pembolehubah JavaScript masih wujud. Ini boleh membawa kepada hasil yang tidak dijangka apabila menyemak kewujudan unsur menggunakan typeof atau === null.

Pendekatan Semasa

Fungsi isNull() cuba memintas isu ini dengan menetapkan ID rawak buat sementara waktu elemen, mencarinya menggunakan getElementById(), dan kemudian mengalih keluar ID sementara. Pendekatan ini mengembalikan benar jika elemen itu tidak ditemui dalam DOM dan palsu jika ia ditemui.

Pemudahan untuk Semakan Kewujudan

Jika matlamatnya hanyalah untuk menyemak sama ada unsur wujud (tanpa mengira keterlihatannya), pendekatan yang lebih mudah ialah menggunakan mana-mana kaedah pemilihan elemen penyemak imbas:

<code class="javascript">var elementExists = document.getElementById("find-me");</code>

Untuk nilai boolean, anda boleh menggunakan !! sebelum panggilan kaedah pemilihan. Selain itu, kaedah seperti querySelector() dan getElementsByTagName() boleh digunakan.

Menyemak Keterlihatan dalam DOM

Untuk menyemak secara khusus sama ada unsur wujud dalam DOM yang kelihatan, kaedah contains() boleh digunakan:

<code class="javascript">document.body.contains(someReferenceToADomElement);</code>

Kaedah ini mengembalikan benar jika elemen hadir dalam DOM dan palsu sebaliknya.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menentukan jika Elemen Hadir dalam DOM Kelihatan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn