Rumah >hujung hadapan web >tutorial js >Menguasai Manipulasi DOM dalam JavaScript: Panduan Komprehensif
Manipulasi DOM ialah aspek asas pembangunan web moden yang membolehkan pembangun mengubah suai kandungan, struktur dan gaya halaman web secara dinamik. Model Objek Dokumen (DOM) mewakili struktur HTML halaman web dalam format seperti pepohon.
DOM ialah antara muka yang disediakan oleh penyemak imbas yang membenarkan JavaScript berinteraksi dengan HTML dan CSS. Ia mewakili halaman sebagai pepohon nod, dengan setiap elemen, atribut atau teks ialah nod.
Untuk HTML di bawah:
<div> <p>The DOM structure looks like this:</p> <ul> <li>Document <ul> <li>HTML</li> <li>Body <ul> <li>Div (id="container")</li> <li>Paragraph ("Hello, World!")</li> </ul> </li> </ul> </li> </ul> <hr> <h3> <strong>2. Selecting DOM Elements</strong> </h3> <h4> <strong>A. Using getElementById</strong> </h4> <p>Select an element by its ID.<br> </p> <pre class="brush:php;toolbar:false">const container = document.getElementById("container"); console.log(container); // Output: <div> <h4> <strong>B. Using querySelector</strong> </h4> <p>Select the first matching element.<br> </p> <pre class="brush:php;toolbar:false">const paragraph = document.querySelector("p"); console.log(paragraph); // Output: <p>Hello, World!</p>
Pilih semua elemen padanan sebagai NodeList.
const allParagraphs = document.querySelectorAll("p"); console.log(allParagraphs); // Output: NodeList of <p> elements
Gunakan sifat textContent atau innerHTML untuk mengubah suai kandungan.
const paragraph = document.querySelector("p"); paragraph.textContent = "Hello, JavaScript!"; // Changes <p>Hello, World!</p> to <p>Hello, JavaScript!</p>
Gunakan setAttribute atau penetapan harta langsung.
const image = document.querySelector("img"); image.setAttribute("src", "new-image.jpg"); image.alt = "A descriptive text";
Ubah suai sifat gaya untuk menggunakan gaya sebaris.
const container = document.getElementById("container"); container.style.backgroundColor = "lightblue"; container.style.padding = "20px";
Gunakan kaedah createElement.
const newParagraph = document.createElement("p"); newParagraph.textContent = "This is a new paragraph."; document.body.appendChild(newParagraph);
Gunakan kaedah buang atau removeChild.
const paragraph = document.querySelector("p"); paragraph.remove(); // Removes the paragraph from the DOM
Anda boleh menambah interaktiviti pada elemen menggunakan pendengar acara.
const button = document.createElement("button"); button.textContent = "Click Me"; button.addEventListener("click", function() { alert("Button clicked!"); }); document.body.appendChild(button);
Navigasi melalui elemen ibu bapa, anak dan adik-beradik.
const child = document.querySelector("p"); const parent = child.parentElement; console.log(parent); // Output: Parent element of <p> const children = parent.children; console.log(children); // Output: HTMLCollection of child elements
const sibling = child.nextElementSibling; console.log(sibling); // Output: Next sibling element
const fragment = document.createDocumentFragment(); for (let i = 0; i < 5; i++) { const li = document.createElement("li"); li.textContent = `Item ${i + 1}`; fragment.appendChild(li); } document.querySelector("ul").appendChild(fragment);
Meminimumkan Manipulasi DOM Terus:
Cache elemen dan ubah suai secara pukal.
Gunakan Perpustakaan DOM Maya:
Untuk aplikasi yang rumit, pertimbangkan perpustakaan seperti React atau Vue.
<div> <p>The DOM structure looks like this:</p> <ul> <li>Document <ul> <li>HTML</li> <li>Body <ul> <li>Div (id="container")</li> <li>Paragraph ("Hello, World!")</li> </ul> </li> </ul> </li> </ul> <hr> <h3> <strong>2. Selecting DOM Elements</strong> </h3> <h4> <strong>A. Using getElementById</strong> </h4> <p>Select an element by its ID.<br> </p> <pre class="brush:php;toolbar:false">const container = document.getElementById("container"); console.log(container); // Output: <div> <h4> <strong>B. Using querySelector</strong> </h4> <p>Select the first matching element.<br> </p> <pre class="brush:php;toolbar:false">const paragraph = document.querySelector("p"); console.log(paragraph); // Output: <p>Hello, World!</p>
Menguasai Manipulasi DOM adalah penting untuk mencipta aplikasi web yang dinamik, interaktif dan mesra pengguna.
Hai, saya Abhay Singh Kathayat!
Saya seorang pembangun tindanan penuh dengan kepakaran dalam kedua-dua teknologi hadapan dan belakang. Saya bekerja dengan pelbagai bahasa pengaturcaraan dan rangka kerja untuk membina aplikasi yang cekap, berskala dan mesra pengguna.
Jangan ragu untuk menghubungi saya melalui e-mel perniagaan saya: kaashshorts28@gmail.com.
Atas ialah kandungan terperinci Menguasai Manipulasi DOM dalam JavaScript: Panduan Komprehensif. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!