Navigasi DOM HTML
DOM HTML membolehkan anda menavigasi dalam pepohon nod menggunakan perhubungan nod.
Senarai nod HTML DOM
kaedah getElementsByTagName() mengembalikan senarai nod. Senarai nod ialah tatasusunan nod.
Kod berikut memilih semua <p> nod dalam dokumen:
Instance
<html><!DOCTYPE html> <html> <body> <p>Hello World!</p> <p>The DOM is very useful!</p> <script> x=document.getElementsByTagName("p"); document.write("The innerHTML of the second paragraph is: " + x[1].innerHTML); </script> </body> </html>
Jalankan Instance»
Klik butang "Jalankan Instance" untuk melihat contoh dalam talian
Nota:
Subskrip bermula dari 0.
Panjang senarai nod HTML DOM
Atribut panjang mentakrifkan bilangan nod dalam senarai nod.
Anda boleh menggunakan atribut length untuk menggelungkan senarai nod:
Instance
<html><!DOCTYPE html> <html> <body> <p>Hello World!</p> <p>The DOM is very useful!</p> <p>This example demonstrates the <b>length</b> property.</p> <script> x=document.getElementsByTagName("p"); for (i=0;i<x.length;i++) { document.write(x[i].innerHTML); document.write("<br>"); } </script> </body> </html>
Instance yang sedang berjalan»
Klik butang "Jalankan Contoh" untuk melihat tika dalam talian
Analisis tika:
Dapatkan semua<p> >
- Keluarkan nilai nod teks setiap <p> elemen
Perhubungan nod navigasiAnda boleh gunakan tiga atribut nod: parentNode , firstChild dan lastChild untuk menavigasi dalam struktur dokumen. Sila lihat coretan HTML berikut:
<p>Hello World!</p> ;
<div>
<p>DOM sangat berguna!</p>
<p>Contoh ini menunjukkan perhubungan nod.</p>
</div>
</body>
</html>
- Elemen <p> pertama ialah elemen anak pertama (anak pertama) bagi elemen <badan> elemen body> Elemen anak terakhir (lastChild)
- <body> elemen ialah nod induk (parentNode)
<🎜 elemen <p> ;div> elemen >
atribut firstChild boleh digunakan untuk mengakses teks elemen: - Instance
<html><!DOCTYPE html> <html> <body> <p id="intro">Hello World!</p> <script> x=document.getElementById("intro"); document.write(x.firstChild.nodeValue); </script> </body> </html>
DOM root nod
Terdapat dua atribut khas di sini yang boleh akses semua dokumen:
document.documentElement - semua dokumen
- document.body - badan dokumen
- instance
<html><!DOCTYPE html> <html> <body> <p>Hello World!</p> <div> <p>The DOM is very useful!</p> <p>This example demonstrates the <b>document.body</b> property.</p> </div> <script> alert(document.body.innerHTML); </script> </body> </html>
childNodes dan nodeValue
Selain sifat innerHTML, anda juga boleh menggunakan sifat childNodes dan nodeValue untuk mendapatkan kandungan elemen.
Kod berikut mendapat nilai elemen <p> dengan id="intro":
Instance
<html><!DOCTYPE html> <html> <body> <p id="intro">Hello World!</p> <script> txt=document.getElementById("intro").childNodes[0].nodeValue; document.write(txt); </script> </body> </html>
Run Instance»
Klik butang "Run Instance" untuk melihat contoh dalam talian
Dalam contoh di atas, getElementById ialah kaedah, manakala childNodes dan nodeValue ialah sifat.
Dalam tutorial ini, kami akan menggunakan sifat innerHTML. Walau bagaimanapun, mempelajari kaedah di atas akan membantu anda memahami struktur dan navigasi pepohon DOM.