Bagaimana untuk Memeriksa Kewujudan Elemen dengan Cekap dalam DOM Terlihat Tanpa Menggunakan getElementById?

Linda Hamilton
Lepaskan: 2024-10-21 22:27:02
asal
674 orang telah melayarinya

How to Efficiently Check Element Existence in the Visible DOM Without Using getElementById?

Cara Menyemak Kewujudan Elemen dalam DOM Terlihat

Menguji untuk Kewujudan Elemen Tanpa getElementById

Apabila cuba mengesahkan kewujudan elemen tanpa menggunakan getElementById, ia menjadi jelas bahawa pembolehubah tidak mengekalkan rujukan langsung kepada elemen DOM tetapi sebaliknya mengekalkan nilai awalnya. Ini boleh membawa kepada hasil yang tidak dijangka apabila menyemak kewujudan elemen selepas dialih keluar daripada DOM.

Kaedah untuk Menyemak Kewujudan

Untuk menangani isu ini, pertimbangkan fungsi isNull, yang cuba memastikan kewujudan elemen:

<code class="javascript">var isNull = function (element) {
  var randomID = getRandomID(12),
    savedID = (element.id) ? element.id : null;
  element.id = randomID;
  var foundElm = document.getElementById(randomID);
  element.removeAttribute('id');
  if (savedID !== null) {
    element.id = savedID;
  }
  return (foundElm) ? false : true;
};</code>
Salin selepas log masuk

Kaedah ini berfungsi, tetapi pendekatan yang lebih mudah dicadangkan.

Menyemak Kewujudan dalam DOM Kelihatan

Untuk menentukan sama ada unsur hadir dalam DOM yang kelihatan, gunakan kaedah contains():

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

Kaedah ini mengembalikan Boolean yang menunjukkan sama ada elemen itu adalah sebahagian daripada DOM. Ia menawarkan cara yang lebih langsung dan cekap untuk menyemak kewujudan berbanding dengan fungsi isNull.

Atas ialah kandungan terperinci Bagaimana untuk Memeriksa Kewujudan Elemen dengan Cekap dalam DOM Terlihat Tanpa Menggunakan getElementById?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!