Tonton video dan selesaikan tutorial interaktif ini untuk mempelajari dasar-dasar melihat dan mengubah DOM halaman menggunakan Chrome DevTools.
Tutorial ini mengasumsikan bahwa Anda mengetahui perbedaan antara DOM dan HTML. Lihat Lampiran: HTML versus DOM untuk mengetahui penjelasannya.
Melihat node DOM
Hierarki DOM di panel Elemen adalah tempat Anda melakukan semua aktivitas terkait DOM di DevTools.
Memeriksa node
Jika Anda tertarik dengan node DOM tertentu, Periksa adalah cara cepat untuk membuka DevTools dan menyelidiki node tersebut.
- Klik kanan Michelangelo di bawah, lalu pilih Periksa.
- Michelangelo
- Raphael
Panel Elements di DevTools akan terbuka.
<li>Michelangelo</li>
ditandai di Hierarki DOM.
- Klik ikon Inspect di pojok kiri atas DevTools.
Klik teks Tokyo di bawah.
- Tokyo
Beirut
Sekarang,
<li>Tokyo</li>
ditandai di Hierarki DOM.
Memeriksa node juga merupakan langkah pertama untuk melihat dan mengubah gaya node. Lihat Memulai Melihat dan Mengubah CSS.
Menavigasi Hierarki DOM dengan keyboard
Setelah memilih node di Hierarki DOM, Anda dapat menavigasi Hierarki DOM dengan keyboard.
Klik kanan Ringo di bawah, lalu pilih Periksa.
<li>Ringo</li>
dipilih di Hierarki DOM.- George
- Ringo
- Paul
John
Tekan tombol panah Atas 2 kali.
<ul>
dipilih.Tekan tombol panah Kiri. Daftar
<ul>
diciutkan.Tekan tombol panah Kiri lagi. Induk node
<ul>
dipilih. Dalam hal ini, node<li>
berisi petunjuk untuk langkah 1.Tekan tombol panah Bawah 3 kali sehingga Anda telah memilih ulang daftar
<ul>
yang baru saja diciutkan. Kodenya akan terlihat seperti ini:<ul>...</ul>
Tekan tombol panah Kanan. Daftar akan diperluas.
Scroll ke tampilan
Saat melihat Hierarki DOM, terkadang Anda akan tertarik dengan node DOM yang saat ini tidak berada di area pandang. Misalnya, Anda men-scroll ke bagian bawah halaman, dan Anda tertarik dengan node <h1>
di bagian atas halaman. Scroll ke tampilan
memungkinkan Anda memosisikan ulang area tampilan dengan cepat sehingga Anda dapat melihat node.
Klik kanan Magritte di bawah, lalu pilih Periksa.
- Magritte
- Soutine
Buka bagian Lampiran: Scroll ke tampilan di bagian bawah halaman ini. Petunjuknya akan dilanjutkan di sana.
Setelah menyelesaikan petunjuk di bagian bawah halaman, Anda akan kembali ke sini.
Tampilkan penggaris
Dengan penggaris di atas dan di sebelah kiri area pandang, Anda dapat mengukur lebar dan tinggi elemen saat mengarahkan kursor ke elemen tersebut di panel Elemen.
Aktifkan penggaris dengan salah satu dari dua cara berikut:
- Tekan Control+Shift+P atau Command+Shift+P (Mac) untuk membuka menu Command, ketik
Show rulers on hover
, lalu tekan Enter. - Periksa Setelan > Preferensi > Elemen > Tampilkan penggaris saat mengarahkan kursor.
Unit pengukuran aturan adalah piksel.
Menelusuri node
Anda dapat menelusuri Hierarki DOM menurut string, pemilih CSS, atau pemilih XPath.
- Fokuskan kursor Anda ke panel Elemen.
- Tekan Control+F atau Command+F (Mac). Kotak Penelusuran akan terbuka di bagian bawah Hierarki DOM.
Ketik
The Moon is a Harsh Mistress
. Kalimat terakhir ditandai di Hierarki DOM.
Seperti yang disebutkan di atas, Kotak penelusuran juga mendukung pemilih CSS dan XPath.
Panel Elemen memilih hasil pertama yang cocok di hierarki DOM dan memutarnya ke tampilan di area pandang. Secara default, hal ini terjadi saat Anda mengetik. Jika Anda selalu menggunakan kueri penelusuran yang panjang, Anda dapat membuat DevTools menjalankan penelusuran hanya saat Anda menekan Enter.
Untuk menghindari lompatan yang tidak perlu di antara node, hapus centang pada kotak
Setelan > Preferensi > Global > Telusuri saat Anda mengetik.Mengedit DOM
Anda dapat mengedit DOM dengan cepat dan melihat pengaruh perubahan tersebut terhadap halaman.
Edit konten
Untuk mengedit konten node, klik dua kali konten di Hierarki DOM.
Klik kanan Michelle di bawah, lalu pilih Periksa.
- Menggoreng
- Michelle
Di Hierarki DOM, klik dua kali
Michelle
. Dengan kata lain, klik dua kali teks antara<li>
dan</li>
. Teks ditandai dengan warna biru untuk menunjukkan bahwa teks tersebut dipilih.Hapus
Michelle
, ketikLeela
, lalu tekan Enter untuk mengonfirmasi perubahan. Teks di atas berubah dari Michelle menjadi Leela.
Edit atribut
Untuk mengedit atribut, klik dua kali nama atau nilai atribut. Ikuti petunjuk di bawah untuk mempelajari cara menambahkan atribut ke node.
Klik kanan Howard di bawah, lalu pilih Periksa.
- Howard
- Vince
Klik dua kali
<li>
. Teks ditandai untuk menunjukkan bahwa node dipilih.Tekan tombol panah Kanan, tambahkan spasi, ketik
style="background-color:gold"
, lalu tekan Enter. Warna latar belakang node berubah menjadi emas.
Anda juga dapat menggunakan opsi klik kanan Edit atribut.
Mengedit jenis node
Untuk mengedit jenis node, klik dua kali jenis, lalu ketik jenis baru.
Klik kanan Hank di bawah, lalu pilih Periksa.
- Dean
- Henny
- Tadeus
- Brock
Klik dua kali
<li>
. Teksli
ditandai.Hapus
li
, ketikbutton
, lalu tekan Enter. Node<li>
berubah menjadi node<button>
.
Edit sebagai HTML
Untuk mengedit node sebagai HTML dengan sorotan sintaksis dan pelengkapan otomatis, pilih Edit as HTML dari menu drop-down node.
Klik kanan Leonard di bawah, lalu pilih Periksa.
- Penny
- Howard
- Rajesh
- Leonard
Di panel Elemen, klik kanan node saat ini, lalu pilih Edit sebagai HTML dari menu drop-down.
Tekan Enter untuk memulai baris baru dan mulai mengetik
<l
. DevTool menyoroti sintaksis HTML dan melengkapi tag secara otomatis untuk Anda.Pilih elemen
li
dari menu pelengkapan otomatis dan ketik>
. DevTools otomatis menambahkan tag</li>
penutup setelah kursor.Ketik
Sheldon
di dalam tag, lalu tekan Control / Command + Enter untuk menerapkan perubahan.
Menduplikasi node
Anda dapat menduplikasi elemen menggunakan opsi klik kanan Duplikasi elemen.
Klik kanan Nana di bawah, lalu pilih Periksa.
- Bonfire of the Vanities
- Nana
- Orlando
- White Noise
Di panel Elemen, klik kanan
<li>Nana</li>
, lalu pilih Duplikasikan elemen dari menu drop-down.Kembali ke halaman. Item daftar telah langsung diduplikasi.
Anda juga dapat menggunakan pintasan keyboard: panah Shift + Alt + Bawah (Windows dan Linux) dan panah Shift + Option + Bawah (MacOS).
Mengambil screenshot node
Anda dapat mengambil screenshot setiap node di Hierarki DOM menggunakan Ambil screenshot node.
Klik kanan gambar apa pun di halaman ini, lalu pilih Periksa.
Di panel Elements, klik kanan URL gambar, lalu pilih Capture node screenshot dari menu drop-down.
Screenshot akan disimpan ke hasil download Anda.
Untuk mempelajari lebih lanjut cara mengambil screenshot dengan Devtools, lihat 4 cara mengambil screenshot dengan DevTools.
Mengurutkan ulang node DOM
Tarik node untuk mengurutkannya ulang.
Klik kanan Elvis Presley di bawah, lalu pilih Periksa. Perhatikan bahwa ini adalah item terakhir dalam daftar.
- Stevie Wonder
- Tom Waits
- Chris Thile
- Elvis Presley
Di Hierarki DOM, tarik
<li>Elvis Presley</li>
ke bagian atas daftar.
Paksa status
Anda dapat memaksa node tetap dalam status seperti :active
, :hover
, :focus
,
:visited
, dan :focus-within
.
Arahkan kursor ke The Lord of the Flies di bawah. Warna latar belakang menjadi oranye.
- The Lord of the Flies
- Crime and Punishment
- Moby Dick
Klik kanan The Lord of the Flies di atas, lalu pilih Periksa.
Klik kanan
<li class="demo--hover">The Lord of the Flies</li>
, lalu pilih Force State > :hover. Lihat Lampiran: Opsi tidak ada jika Anda tidak melihat opsi ini. Warna latar belakang tetap oranye meskipun Anda tidak benar-benar mengarahkan kursor ke node.
Menyembunyikan node
Tekan H untuk menyembunyikan node.
Klik kanan The Stars My Destination di bawah, lalu pilih Periksa.
- The Count of Monte Cristo
- The Stars My Destination
Tekan tombol H. Node disembunyikan. Anda juga dapat mengklik kanan node dan menggunakan opsi Sembunyikan elemen.
Tekan tombol H lagi. Node akan ditampilkan lagi.
Hapus node
Tekan Delete untuk menghapus node.
Klik kanan Foundation di bawah, lalu pilih Inspect.
- The Illustrated Man
- Through the Looking-Glass
- Fondasi
Tekan tombol Delete. Node dihapus. Anda juga dapat mengklik kanan node dan menggunakan opsi Hapus elemen.
Tekan Control+Z atau Command+Z (Mac). Tindakan terakhir diurungkan dan node akan muncul kembali.
Mengakses node di Konsol
DevTools menyediakan beberapa pintasan untuk mengakses node DOM dari Konsol, atau mendapatkan referensi JavaScript ke node tersebut.
Mereferensikan node yang saat ini dipilih dengan $0
Saat Anda memeriksa node, teks == $0
di samping node berarti Anda dapat mereferensikan node ini di Konsol dengan variabel $0
.
Klik kanan The Left Hand of Darkness di bawah, lalu pilih Periksa.
- The Left Hand of Darkness
- Dune
Tekan tombol Escape untuk membuka Panel Samping Konsol.
Ketik
$0
dan tekan tombol Enter. Hasil ekspresi menunjukkan bahwa$0
bernilai<li>The Left Hand of Darkness</li>
.Arahkan kursor ke hasil. Node akan ditandai di area pandang.
Klik
<li>Dune</li>
di Hierarki DOM, ketik$0
di Konsol lagi, lalu tekan Enter lagi. Sekarang,$0
bernilai<li>Dune</li>
.
Menyimpan sebagai variabel global
Jika Anda perlu merujuk kembali ke node beberapa kali, simpan sebagai variabel global.
Klik kanan The Big Sleep di bawah, lalu pilih Periksa.
- The Big Sleep
- The Long Goodbye
Klik kanan
<li>The Big Sleep</li>
di DOM Tree, lalu pilih Simpan sebagai variabel global. Lihat Lampiran: Opsi tidak ada jika Anda tidak melihat opsi ini.Ketik
temp1
di Konsol, lalu tekan Enter. Hasil ekspresi menunjukkan bahwa variabel dievaluasi ke node.
Salin jalur JS
Salin jalur JavaScript ke node saat Anda perlu mereferensikannya dalam pengujian otomatis.
Klik kanan The Brothers Karamazov di bawah, lalu pilih Periksa.
- The Brothers Karamazov
- Crime and Punishment
Klik kanan
<li>The Brothers Karamazov</li>
di Hierarki DOM, lalu pilih Salin > Salin Jalur JS. Ekspresidocument.querySelector()
yang me-resolve ke node telah disalin ke papan klip Anda.Tekan Control+V atau Command+V (Mac) untuk menempelkan ekspresi ke dalam Konsol.
Tekan Enter untuk mengevaluasi ekspresi.
Berhenti pada perubahan DOM
DevTools memungkinkan Anda menjeda JavaScript halaman saat JavaScript mengubah DOM. Lihat titik henti sementara perubahan DOM.
Langkah berikutnya
Hal ini mencakup sebagian besar fitur terkait DOM di DevTools. Anda dapat menemukan yang lainnya dengan mengklik kanan node di Hierarki DOM dan bereksperimen dengan opsi lain yang tidak tercakup dalam tutorial ini. Lihat juga Pintasan keyboard panel Elemen.
Lihat halaman beranda Chrome DevTools untuk menemukan semua hal lain yang dapat Anda lakukan dengan DevTools.
Lihat Komunitas jika Anda ingin menghubungi tim DevTools atau mendapatkan bantuan dari komunitas DevTools.
Lampiran: HTML versus DOM
Bagian ini menjelaskan perbedaan antara HTML dan DOM dengan cepat.
Saat Anda menggunakan browser web untuk meminta halaman seperti https://example.com
, server akan menampilkan HTML seperti ini:
<!doctype html>
<html>
<head>
<title>Hello, world!</title>
</head>
<body>
<h1>Hello, world!</h1>
<p>This is a hypertext document on the World Wide Web.</p>
<script src="/script.js" async></script>
</body>
</html>
Browser mengurai HTML dan membuat hierarki objek seperti ini:
html
head
title
body
h1
p
script
Hierarki objek, atau node, yang mewakili konten halaman ini disebut DOM. Saat ini, kode ini terlihat sama dengan HTML, tetapi anggaplah skrip yang dirujuk di bagian bawah HTML menjalankan kode ini:
const h1 = document.querySelector('h1');
h1.parentElement.removeChild(h1);
const p = document.createElement('p');
p.textContent = 'Wildcard!';
document.body.appendChild(p);
Kode tersebut menghapus node h1
dan menambahkan node p
lain ke DOM. DOM lengkap kini terlihat
seperti ini:
html
head
title
body
p
script
p
HTML halaman kini berbeda dengan DOM-nya. Dengan kata lain, HTML mewakili konten halaman awal, dan DOM mewakili konten halaman saat ini. Saat JavaScript menambahkan, menghapus, atau mengedit node, DOM menjadi berbeda dengan HTML.
Lihat Pengantar DOM untuk mempelajari lebih lanjut.
Lampiran: Men-scroll agar muncul
Ini adalah kelanjutan dari bagian Scroll ke tampilan. Ikuti petunjuk di bawah untuk menyelesaikan bagian ini.
- Node
<li>Magritte</li>
akan tetap dipilih di Hierarki DOM Anda. Jika tidak, kembali ke Scroll ke tampilan dan mulai lagi. Klik kanan node
<li>Magritte</li>
, lalu pilih Scroll ke tampilan. Viewport Anda akan di-scroll kembali sehingga Anda dapat melihat node Magritte. Lihat Lampiran: Opsi tidak ada jika Anda tidak dapat melihat opsi Scroll ke tampilan.
Lampiran: Opsi tidak ada
Banyak petunjuk dalam tutorial ini yang meminta Anda untuk mengklik kanan node di Hierarki DOM, lalu memilih opsi dari menu konteks yang muncul. Jika Anda tidak melihat opsi yang ditentukan di menu konteks, coba klik kanan di luar teks node.