
В этом разделе вы попрактикуетесь в создании новых HTML элементов и добавлении их на страницу, используя JavaScript. Вы будете работать с уже готовой HTML структурой и дополнять JavaScript код, чтобы динамически изменять веб-страницу. Задания расположены от простого к сложному, начиная с создания простых элементов и заканчивая более сложными манипуляциями. Внимательно читайте описание задания и используйте подсказки, если возникнут трудности.
- Модуль 1: Основы выбора элементов
- Выбор элемента по ID.
- Выбор элементов по классу.
- Выбор элементов по тегу.
- Выбор по селектору CSS.
- Выбор по атрибуту.
- Поиск элементов внутри другого элемента.
- Поиск родительского элемента.
- Поиск соседних элементов (предыдущий, следующий).
- Поиск первого и последнего дочернего элемента.
- Поиск всех дочерних элементов.
- Модуль 2: Манипуляция содержимым
- Модуль 3: Работа с атрибутами
- Модуль 4: Управление классами
- Модуль 5: Управление стилями
- Модуль 6: Создание и удаление элементов
- Создание нового элемента.
- Вставка элемента перед другим элементом.
- Вставка элемента после другого элемента.
- Добавление элемента в определенную позицию внутри списка дочерних элементов.
- Удаление элемента из DOM.
- Замена одного элемента другим.
- Перемещение существующего элемента в другое место DOM..
- Очистка содержимого элемента без его удаления.
- Модуль 7: Обработка событий
- Модуль 8: Работа с формами
- Модуль 9: Продвинутые манипуляции
- Модуль 10: Работа с размерами и прокруткой
- Получение размеров элемента.
- Получение позиции элемента относительно окна браузера.
- Получение позиции элемента относительно родительского элемента.
- Управление прокруткой страницы.
- Определение, виден ли элемент в текущей области просмотра.
- Плавная прокрутка к элементу.
- Создание элемента, который фиксируется при прокрутке.
- Модуль 11: Работа с медиа-элементами
- Модуль 12: Практические задания
Создание простого параграфа
Создайте новый элемент параграфа (`<p>`) и добавьте в него текст "Это новый параграф". Затем добавьте этот параграф в конец элемента `body`.
let newParagraph = document.input__1('p');
newParagraph.input__2 = "Это новый параграф";
document.input__3.input__4(newParagraph);
Создание заголовка H2 в div
Создайте новый элемент заголовка второго уровня (`<h2>`) с текстом "Заголовок H2". Найдите элемент `div` с `id="container"` и добавьте созданный заголовок внутрь этого `div`.
<div id="container"></div>
let newHeading = document.input__1('h2');
newHeading.input__2 = "Заголовок H2";
let container = document.input__3('container');
container.input__4(newHeading);
Создание списка элементов
Создайте новый неупорядоченный список (`<ul>`). Затем создайте три элемента списка (`<li>`) с текстами "Пункт 1", "Пункт 2", "Пункт 3" соответственно. Добавьте каждый элемент списка в созданный список `<ul>`. И в конце добавьте список `<ul>` в элемент `div` с `id="list-container"`.
<div id="list-container"></div>
let newList = document.input__1('ul');
for (let i = 1; i <= 3; i++) {
let listItem = document.input__2('li');
listItem.input__3 = `Пункт ${i}`;
newList.input__4(listItem);
}
let listContainer = document.input__5('list-container');
listContainer.input__6(newList);
Создание изображения
Создайте новый элемент изображения (`<img>`). Установите атрибут `src` на URL изображения: "https://naytikurs.ru/assets/uploads/2025/03/3d-modelirovanie-i-vizualizatsiya-test-dlya-spetsialistov-v-trehmernoj-grafike-300x300.png". Установите атрибут `alt` на "3D моделирование". Добавьте изображение в элемент `div` с `id="image-container"`.
<div id="image-container"></div>
let newImage = document.input__1('img');
newImage.input__2('src', 'https://naytikurs.ru/assets/uploads/2025/03/3d-modelirovanie-i-vizualizatsiya-test-dlya-spetsialistov-v-trehmernoj-grafike-300x300.png');
newImage.input__3('alt', '3D моделирование');
let imageContainer = document.input__4('image-container');
imageContainer.input__5(newImage);
Создание кнопки с классом
Создайте новый элемент кнопки (`<button>`) с текстом "Нажми меня!". Добавьте кнопке класс "primary-button". Добавьте кнопку в элемент `div` с `id="button-container"`.
<div id="button-container"></div>
let newButton = document.input__1('button');
newButton.input__2 = "Нажми меня!";
newButton.classList.input__3('primary-button');
let buttonContainer = document.input__4('button-container');
buttonContainer.input__5(newButton);
Создание элемента с разными атрибутами
Создайте новый элемент ссылки (`<a>`). Установите атрибут `href` на "https://www.example.com". Установите атрибут `target` на "_blank". Установите текст ссылки "Перейти на Example". Добавьте ссылку в элемент `div` с `id="link-container"`.
<div id="link-container"></div>
let newLink = document.input__1('a');
newLink.input__2('href', 'https://www.example.com');
newLink.input__3('target', '_blank');
newLink.input__4 = "Перейти на Example";
let linkContainer = document.input__5('link-container');
linkContainer.input__6(newLink);
Вставка элемента перед другим элементом
Создайте новый параграф (`<p>`) с текстом "Вставленный параграф". Найдите элемент `div` с `id="existing-paragraph"`. Вставьте созданный параграф **перед** элементом `div` с `id="existing-paragraph"` в родительском элементе.
<div id="parent-container">
<div id="existing-paragraph">Существующий параграф</div>
</div>
let newParagraph = document.input__1('p');
newParagraph.input__2 = "Вставленный параграф";
let existingParagraph = document.input__3('existing-paragraph');
let parent = existingParagraph.input__4;
parent.input__5(newParagraph, existingParagraph);
Динамическое создание элементов в цикле
Создайте 5 новых элементов параграфа (`<p>`) в цикле. Для каждого параграфа установите текст "Параграф №i", где i - номер итерации цикла (от 1 до 5). Добавьте все созданные параграфы в элемент `div` с `id="loop-container"`.
<div id="loop-container"></div>
let container = document.input__1('loop-container');
for (let i = 1; i <= input__2; i++) {
let paragraph = document.input__3('p');
paragraph.input__4 = `Параграф №${i}`;
container.input__5(paragraph);
}