Rumah >hujung hadapan web >tutorial js >Cara Mengesahkan Kewujudan Elemen dalam DOM Terlihat Tanpa Bergantung pada getElementById
Cara Menentukan Kewujudan Elemen dalam DOM Terlihat
Anda mungkin menghadapi senario di mana anda perlu mengesahkan kehadiran elemen tanpa bergantung pada kaedah getElementById. Artikel ini membincangkan pendekatan yang dipertingkatkan dan memberikan cerapan tentang kelakuan pembolehubah JavaScript.
Fungsi Tersuai untuk Pemeriksaan Kewujudan Elemen
Seperti yang ditunjukkan dalam kod yang disediakan, mendapatkan semula elemen menjadi pembolehubah tidak menjamin rujukan langsung kepada DOM. Untuk menyemak kewujudan dengan tepat, anda boleh menggunakan fungsi seperti isNull(). Fungsi ini memberikan ID rawak kepada elemen, mendapatkannya menggunakan ID yang ditetapkan dan kemudian mengalih keluar ID untuk mengelakkan kesan sampingan.
Kaedah Alternatif
Selain tersuai ini fungsi, terdapat pilihan yang lebih mudah untuk menyemak kewujudan elemen:
Semak DOM Kelihatan
Untuk menyemak secara khusus sama ada elemen berada dalam DOM yang kelihatan, gunakan kaedah contains() pada elemen DOM:
document.body.contains(someReferenceToADomElement);
Kaedah ini menyediakan pengesahan kewujudan yang lebih tepat.
Memahami Gelagat Pembolehubah JavaScript
Mengenai sebab pembolehubah JavaScript memaparkan gelagat yang diperhatikan, penjelasannya terletak pada sifat pembolehubah. Pertimbangkan kod:
var myVar = document.getElementById("myElem");
myVar menyimpan rujukan kepada elemen, bukan sambungan langsung kepadanya. Apabila elemen dialih keluar daripada DOM, penunjuk rujukannya dalam myVar tidak dikemas kini. Oleh itu, jenis myVar kekal sebagai "objek" dan isNull(myVar) mengembalikan palsu, menunjukkan kehadiran elemen yang jelas walaupun ia dialih keluar.
Dengan memahami konsep ini, anda boleh mengesahkan kewujudan elemen dengan berkesan dalam pelbagai senario DOM.
Atas ialah kandungan terperinci Cara Mengesahkan Kewujudan Elemen dalam DOM Terlihat Tanpa Bergantung pada getElementById. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!