--- id: 587d7fa6367417b2b2512bc2 title: Додавайте елементи документа за допомогою D3 challengeType: 6 forumTopicId: 301474 dashedName: add-document-elements-with-d3 --- # --description-- У D3 є кілька способів, щоб додавати і змінювати елементи у вашому документі. Метод `select()` дозволяє вибрати один елемент документа. Задається аргумент імені елемента, який вам потрібен і повертається HTML-вузол першого елемента в документі, який відповідає назві. Наприклад: ```js const anchor = d3.select("a"); ``` У наведеному вище прикладі знайдено перший тег прив'язки на сторінці та збережено для нього HTML-вузол у змінній `anchor`. Вибирати елементи можна і за допомогою інших методів. Частина `d3` в прикладі - це посилання на об’єкт D3, через яке ми отримуємо доступ до методів D3. Ще два корисні методи: `append()` та `text()`. Метод `append()` приймає аргумент для елементу, який ви хочете додати до документа. До вибраного елемента додається HTML-вузол і ви отримуєте дескриптор до цього вузла. Метод `text()` задає текст вибраного вузла або даний текст. Щоб задати значення, потрібно передати рядок у вигляді аргументу в дужках методу. Ось приклад встановлення невпорядкованого списку, додавання пункту списку і тексту: ```js d3.select("ul") .append("li") .text("Very important item"); ``` D3 дозволяє використовувати методи в комбінаціях, щоб виконувати кілька дій одна за одною. # --instructions-- Використовуйте метод `select`, щоб обрати тег `body` в документі. Тоді за допомогою `append` додайте тег `h1`, а тоді текст `Learning D3` в елемент `h1`. # --hints-- Тег `body` повинен мати один елемент `h1`. ```js assert($('body').children('h1').length == 1); ``` Елемент `h1` повинен містити текст `Learning D3`. ```js assert($('h1').text() == 'Learning D3'); ``` Ваш код повинен мати доступ до об’єкта `d3`. ```js assert(code.match(/d3/g)); ``` Ваш код має застосовувати метод`select`. ```js assert(code.match(/\.select/g)); ``` Ваш код має застосовувати метод `append`. ```js assert(code.match(/\.append/g)); ``` Ваш код має застосовувати метод `text`. ```js assert(code.match(/\.text/g)); ``` # --seed-- ## --seed-contents-- ```html
``` # --solutions-- ```html ```