
В этом тренажере вы попрактикуетесь перемещать существующие HTML-элементы в другие места DOM-дерева. Вы будете использовать различные методы JavaScript, такие как `appendChild`, `insertBefore`, `replaceChild` и другие, для манипулирования структурой документа. Задания охватывают различные сценарии: перемещение элементов в конец, начало, перед или после других элементов, а также замену одних элементов другими. Каждое задание содержит готовый HTML-код и JavaScript-код с пропусками, которые вам нужно заполнить, чтобы добиться желаемого результата. Внимательно читайте условия и используйте свои знания DOM, чтобы правильно расставить элементы.
- Модуль 1: Основы выбора элементов
- Выбор элемента по ID.
- Выбор элементов по классу.
- Выбор элементов по тегу.
- Выбор по селектору CSS.
- Выбор по атрибуту.
- Поиск элементов внутри другого элемента.
- Поиск родительского элемента.
- Поиск соседних элементов (предыдущий, следующий).
- Поиск первого и последнего дочернего элемента.
- Поиск всех дочерних элементов.
- Модуль 2: Манипуляция содержимым
- Модуль 3: Работа с атрибутами
- Модуль 4: Управление классами
- Модуль 5: Управление стилями
- Модуль 6: Создание и удаление элементов
- Создание нового элемента.
- Вставка элемента перед другим элементом.
- Вставка элемента после другого элемента.
- Добавление элемента в определенную позицию внутри списка дочерних элементов.
- Удаление элемента из DOM.
- Замена одного элемента другим.
- Перемещение существующего элемента в другое место DOM..
- Очистка содержимого элемента без его удаления.
- Модуль 7: Обработка событий
- Модуль 8: Работа с формами
- Модуль 9: Продвинутые манипуляции
- Модуль 10: Работа с размерами и прокруткой
- Получение размеров элемента.
- Получение позиции элемента относительно окна браузера.
- Получение позиции элемента относительно родительского элемента.
- Управление прокруткой страницы.
- Определение, виден ли элемент в текущей области просмотра.
- Плавная прокрутка к элементу.
- Создание элемента, который фиксируется при прокрутке.
- Модуль 11: Работа с медиа-элементами
- Модуль 12: Практические задания
Переместить элемент в конец родителя
Переместите элемент с id "child" внутрь элемента с id "parent", сделав его последним дочерним элементом.
<div id="parent">
<p>Первый параграф</p>
<p>Второй параграф</p>
</div>
<div id="child">Перемещаемый элемент</div>
const parent = document.getElementById("parent");
const child = document.input__1("child");
parent.input__2(child);
Переместить элемент в начало родителя
Переместите элемент с id "child" внутрь элемента с id "parent" так, чтобы он стал первым дочерним элементом.
<div id="parent">
<p>Первый параграф</p>
</div>
<div id="child">Перемещаемый элемент</div>
const parent = document.getElementById("parent");
const child = document.getElementById("child");
const firstChild = parent.input__1;
parent.insertBefore(input__2, firstChild);
Переместить элемент перед другим элементом
Переместите элемент с id "movable" так, чтобы он оказался непосредственно перед элементом с id "tt".
<div id="container">
<p id="tt">Целевой элемент</p>
<p>Другой параграф</p>
</div>
<div id="movable">Перемещаемый элемент</div>
const tt = document.getElementById("tt");
const movable = document.getElementById("movable");
input__1.insertBefore(movable, tt);
Переместить элемент после другого элемента
Переместите элемент с id "movable" так, чтобы он оказался сразу после элемента с id "tt".
<div id="container">
<p id="tt">Целевой элемент</p>
<p>Другой параграф</p>
</div>
<div id="movable">Перемещаемый элемент</div>
const tt = document.getElementById("tt");
const movable = document.getElementById("movable");
tt.parentNode.insertBefore(movable, input__1.nextSibling);
Заменить один элемент другим
Замените элемент с id "oldElement" на элемент с id "newElement".
<div id="container">
<p id="oldElement">Старый элемент</p>
</div>
<div id="newElement">Новый элемент</div>
const oldElement = document.getElementById("oldElement");
const newElement = document.getElementById("newElement");
oldElement.input__1.replaceChild(input__2, oldElement);
Переместить картинку в другой div
Переместите картинку с id "myImage" из div с id "sourceDiv" в div с id "ttDiv".
<div id="sourceDiv">
<img id="myImage" src="https://naytikurs.ru/assets/uploads/2025/03/3d-modelirovanie-i-vizualizatsiya-test-dlya-spetsialistov-v-trehmernoj-grafike2-300x300.png" alt="Картинка">
</div>
<div id="ttDiv"></div>
const image = document.getElementById("myImage");
const ttDiv = document.input__1("ttDiv");
ttDiv.appendChild(input__2);
Переместить несколько элементов
Переместите все элементы с классом "item" из div с id "source" в div с id "destination".
<div id="source">
<p class="item">Элемент 1</p>
<p class="item">Элемент 2</p>
<p class="item">Элемент 3</p>
</div>
<div id="destination"></div>
const items = document.querySelectorAll(".item");
const destination = document.getElementById("destination");
for (let i = 0; i < items.input__1; i++) {
destination.appendChild(items[i]);
}
Перемещение с использованием cloneNode
Создайте копию элемента с id "original" и переместите эту копию в элемент с id "tt". Оригинальный элемент должен остаться на месте.
<div id="original">Оригинальный элемент</div>
<div id="tt"></div>
const original = document.getElementById("original");
const tt = document.getElementById("tt");
const copy = original.input__1(true);
tt.appendChild(input__2);
Перемещение элемента на основе условия
Переместите элемент с id "moveMe" в div с id "tt1", если его текстовое содержимое равно "Переместить", иначе переместите его в div с id "tt2".
<div id="moveMe">Переместить</div>
<div id="tt1"></div>
<div id="tt2"></div>
const moveMe = document.getElementById("moveMe");
const tt1 = document.getElementById("tt1");
const tt2 = document.getElementById("tt2");
if (moveMe.textContent input__1 "Переместить") {
tt1.appendChild(moveMe);
} else {
input__2.appendChild(moveMe);
}
Перемещение элемента и изменение его атрибутов
Переместите элемент с id "imageToMove" в div с id "newLocation" и измените его атрибут src на другое изображение.
<div id="oldLocation">
<img id="imageToMove" src="https://naytikurs.ru/assets/uploads/2025/03/3d-modelirovanie-i-vizualizatsiya-test-dlya-spetsialistov-v-trehmernoj-grafike2-300x300.png" alt="Старая картинка">
</div>
<div id="newLocation"></div>
const image = document.getElementById("imageToMove");
const newLocation = document.getElementById("newLocation");
newLocation.appendChild(image);
image.input__1('src', 'https://naytikurs.ru/assets/uploads/2025/03/test-na-znanie-osnov-kiberbezopasnosti-300x300.png');