Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
metodi_js_dlja_roboti_z_dom [2023/12/16 18:55] tro |
metodi_js_dlja_roboti_z_dom [2023/12/28 19:32] (текущий) tro [removeEventListener] |
||
|---|---|---|---|
| Строка 93: | Строка 93: | ||
| містить псевдомасив, | містить псевдомасив, | ||
| ===== elem.firstChild ===== | ===== elem.firstChild ===== | ||
| - | містить посилання на перший дочірній вузол (вузол-елемент або текстовий вузол) вузла elem | + | містить посилання на перший дочірній вузол (вузол-елемент або текстовий вузол) вузла elem. |
| + | УВАГА - першим майже завжди буде текстовим вузлом бо між тегами є пробіл та перенос строки. | ||
| ===== elem.firstElementChild ===== | ===== elem.firstElementChild ===== | ||
| містить посилання на перший дочірній вузол-елемент усередині elem, тобто той, що відповідає тегу | містить посилання на перший дочірній вузол-елемент усередині elem, тобто той, що відповідає тегу | ||
| Строка 116: | Строка 117: | ||
| </ | </ | ||
| ==== dataset ==== | ==== dataset ==== | ||
| - | Для отримання значення data-атрибута використовується властивість dataset, після якої через крапку пишеться ім' | + | **Зберігає користувацькі дата-атрибути**. Зручніше працювати через **dataset**. |
| < | < | ||
| const saveBtn = document.querySelector(' | const saveBtn = document.querySelector(' | ||
| Строка 160: | Строка 161: | ||
| ==== Читання innerHTML ==== | ==== Читання innerHTML ==== | ||
| Властивість innerHTML зберігає вміст елемента, | Властивість innerHTML зберігає вміст елемента, | ||
| + | Він затира структуру що була і заміняє собою нову | ||
| < | < | ||
| - | const link = document.querySelector(" | + | const = '< |
| - | console.log(link.innerHTML); | + | const myNewHtml |
| + | link.innerHTML(myNewHtml); | ||
| </ | </ | ||
| ==== Зміна innerHTML ==== | ==== Зміна innerHTML ==== | ||
| Строка 187: | Строка 190: | ||
| * **handler** — колбек-функція, | * **handler** — колбек-функція, | ||
| * **options** — необов' | * **options** — необов' | ||
| + | < | ||
| + | const myBtn = doucument.querySelector(' | ||
| + | myBtn.addEventListener(' | ||
| + | |||
| + | function onButtonClick (){ | ||
| + | console.log(' | ||
| + | } | ||
| + | </ | ||
| + | або | ||
| < | < | ||
| const button = document.querySelector(" | const button = document.querySelector(" | ||
| Строка 208: | Строка 220: | ||
| видаляє слухача події з елемента. | видаляє слухача події з елемента. | ||
| < | < | ||
| - | element.removeEventListener(event, | + | element.removeEventListener(event, |
| + | </ | ||
| + | |||
| + | < | ||
| + | element.removeEventListener(' | ||
| </ | </ | ||
| ====== Об' | ====== Об' | ||
| Строка 259: | Строка 275: | ||
| * при кліку на кнопку з атрибутом type=" | * при кліку на кнопку з атрибутом type=" | ||
| * Або при натисканні клавіші Enter під час перебування в будь-якому її текстовому полі форми | * Або при натисканні клавіші Enter під час перебування в будь-якому її текстовому полі форми | ||
| + | |||
| + | < | ||
| + | const form = document.querySelector(" | ||
| + | |||
| + | form.addEventListener(" | ||
| + | |||
| + | function handleSubmit(event) { | ||
| + | event.preventDefault(); | ||
| + | console.log(event.elements.email.value); | ||
| + | . | ||
| + | . | ||
| + | . | ||
| + | } | ||
| + | | ||
| + | | ||
| + | |||
| + | </ | ||
| + | або | ||
| < | < | ||
| const form = document.querySelector(" | const form = document.querySelector(" | ||
| Строка 266: | Строка 300: | ||
| }); | }); | ||
| </ | </ | ||
| + | або | ||
| < | < | ||
| const registerForm = document.querySelector(" | const registerForm = document.querySelector(" | ||
| Строка 292: | Строка 327: | ||
| </ | </ | ||
| ===== change ===== | ===== change ===== | ||
| - | Подія відбувається після зміни значення елемента форми | + | Подія відбувається після зміни значення елемента форми |
| ===== input ===== | ===== input ===== | ||
| Подія input відбувається тільки на текстових полях і textarea. | Подія input відбувається тільки на текстових полях і textarea. | ||