tanszek:oktatas:web_technologia_alapjai:js_dom
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| tanszek:oktatas:web_technologia_alapjai:js_dom [2025/03/10 17:57] – [DOM manipulációs technikák] kissa | tanszek:oktatas:web_technologia_alapjai:js_dom [2025/03/12 12:54] (current) – [Elemek kiválasztása] kissa | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ===== DOM manipuláció JavaScript segítségével ===== | + | ====== DOM manipuláció JavaScript segítségével |
| A Document Object Model (DOM) a weboldalak szerkezetét írja le egy hierarchikus fa formájában, | A Document Object Model (DOM) a weboldalak szerkezetét írja le egy hierarchikus fa formájában, | ||
| - | ==== Document Object Model ==== | + | ===== Document Object Model ===== |
| A **DOM (Document Object Model)** egy platformfüggetlen, | A **DOM (Document Object Model)** egy platformfüggetlen, | ||
| Line 38: | Line 38: | ||
| * Stílusokat és attribútumokat módosítsunk (pl. '' | * Stílusokat és attribútumokat módosítsunk (pl. '' | ||
| - | ==== DOM manipulációs technikák ==== | + | ===== DOM manipulációs technikák |
| A DOM elérésére a globális '' | A DOM elérésére a globális '' | ||
| Line 44: | Line 44: | ||
| A következő bekezdések a teljesség igénye nélkül mutatnak be néhány gyakran használt metódust. | A következő bekezdések a teljesség igénye nélkül mutatnak be néhány gyakran használt metódust. | ||
| - | === Elemek kiválasztása === | + | ==== Elemek kiválasztása |
| A DOM-ban található csomópontok elérését a következő függvények biztosítják: | A DOM-ban található csomópontok elérését a következő függvények biztosítják: | ||
| Line 62: | Line 62: | ||
| </ | </ | ||
| < | < | ||
| - | |||
| <h1 id=" | <h1 id=" | ||
| <p class=" | <p class=" | ||
| Line 99: | Line 98: | ||
| - | === Tartalom módosítása === | + | ==== Tartalom módosítása |
| A DOM-ban található csomópontok tartalmát a következő tulajdonságok segítségével lehet elérni, illetve módosítani: | A DOM-ban található csomópontok tartalmát a következő tulajdonságok segítségével lehet elérni, illetve módosítani: | ||
| Line 119: | Line 118: | ||
| </ | </ | ||
| < | < | ||
| - | |||
| <h1 id=" | <h1 id=" | ||
| <p id=" | <p id=" | ||
| Line 143: | Line 141: | ||
| </ | </ | ||
| - | === Attribútumok és stílus módosítása | + | ==== Eseménykezelés |
| + | A DOM-ban található csomópontok eseményeinek (pl. kattintás, dupla kattintás, szövegmező fókuszba kerülése, drag& | ||
| - | * setAttribute, getAttribute | + | * '' |
| - | * classList.add, classList.remove, | + | |
| - | * element.style | + | |
| - | === Új elemek létrehozása és hozzáadása | + | <sxh html> |
| + | < | ||
| + | <html lang=" | ||
| + | < | ||
| + | <meta charset=" | ||
| + | <meta name=" | ||
| + | < | ||
| + | </ | ||
| + | < | ||
| + | <input type=" | ||
| + | <button id=" | ||
| - | * createElement | + | < |
| - | * appendChild, prepend | + | // Szövegmező fókusz eseménykezelője |
| - | * insertBefore | + | document.getElementById(" |
| + | this.style.borderColor = " | ||
| + | }); | ||
| - | === Eseménykezelés === | + | // Gombra kattintás eseménykezelője |
| + | document.getElementById(" | ||
| + | let inputValue | ||
| + | alert(" | ||
| + | }); | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| - | | + | ==== Attribútumok és stílus módosítása ==== |
| + | A DOM csomópontjainak attribútumait és stílusát a következő függvényekkel lehet elérni és módosítani: | ||
| + | |||
| + | | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | <sxh html> | ||
| + | < | ||
| + | <html lang=" | ||
| + | < | ||
| + | <meta charset=" | ||
| + | <meta name=" | ||
| + | < | ||
| + | < | ||
| + | .highlight { | ||
| + | background-color: | ||
| + | font-weight: | ||
| + | } | ||
| + | </ | ||
| + | </ | ||
| + | < | ||
| + | <button id=" | ||
| + | <p id=" | ||
| + | |||
| + | < | ||
| + | let button = document.getElementById(" | ||
| + | let paragraph = document.getElementById(" | ||
| + | |||
| + | // setAttribute és getAttribute használata | ||
| + | button.setAttribute(" | ||
| + | console.log(button.getAttribute(" | ||
| + | |||
| + | // classList használata | ||
| + | |||
| + | paragraph.classList.add(" | ||
| + | setTimeout(() => { | ||
| + | paragraph.classList.remove(" | ||
| + | }, 2000); | ||
| + | |||
| + | button.addEventListener(" | ||
| + | paragraph.classList.toggle(" | ||
| + | }); | ||
| + | |||
| + | // style attribútum használata | ||
| + | paragraph.style.color = " | ||
| + | paragraph.style.fontSize = " | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ==== Új elemek létrehozása és hozzáadása ==== | ||
| + | A következő metódusokkal új csomópontokat hozhatunk létre, és adhatunk hozzá a DOM-hoz: | ||
| + | |||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | <sxh html> | ||
| + | < | ||
| + | <html lang=" | ||
| + | < | ||
| + | <meta charset=" | ||
| + | <meta name=" | ||
| + | < | ||
| + | </ | ||
| + | < | ||
| + | <div id=" | ||
| + | <p>Ez az eredeti bekezdés.</ | ||
| + | </ | ||
| + | |||
| + | <button id=" | ||
| + | |||
| + | < | ||
| + | let container = document.getElementById(" | ||
| + | let button = document.getElementById(" | ||
| + | |||
| + | button.addEventListener(" | ||
| + | // createElement használata | ||
| + | let newParagraph = document.createElement(" | ||
| + | newParagraph.textContent = "Ez egy új bekezdés."; | ||
| + | |||
| + | // appendChild használata (hozzáadja a végére) | ||
| + | container.appendChild(newParagraph); | ||
| + | |||
| + | // prepend használata (hozzáadja az elejére) | ||
| + | let firstParagraph = document.createElement(" | ||
| + | firstParagraph.textContent = "Ez egy bekezdés az elején."; | ||
| + | container.prepend(firstParagraph); | ||
| + | |||
| + | // insertBefore használata (új elem beszúrása egy másik elé) | ||
| + | let middleParagraph = document.createElement(" | ||
| + | middleParagraph.textContent = "Ez egy köztes bekezdés."; | ||
| + | |||
| + | let referenceNode = container.children[1]; | ||
| + | container.insertBefore(middleParagraph, | ||
| + | }); | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| - | ==== Feladat ==== | + | ===== Feladat |
| A feladat egy egyszerű, dinamikus teendő lista készítése. | A feladat egy egyszerű, dinamikus teendő lista készítése. | ||
tanszek/oktatas/web_technologia_alapjai/js_dom.1741629443.txt.gz · Last modified: 2025/03/10 17:57 by kissa
