CollonilTolli
@CollonilTolli

Как я могу добавлять элементы в DOM дерево?

У меня есть вот такая структура html:
<div class="GrandMuther">
            <div class="daughter"><img src="./img/image0.png" alt=""></div>
            <div class="daughter"><img src="./img/image1.png" alt=""></div>
            <div class="daughter"><img src="./img/image2.png" alt=""></div>
            <div class="daughter"><img src="./img/image3.png" alt=""></div>
</div>


Как я могу в элемент .GrandMuther Добавить дочерний элемент, который в свою очередь будет родителем для других дочерних элементов средствами чистого JS?

Вот что должно получиться:
<div class="GrandMuther">
    <div class="Muther">
        <div class="daughter"><img src="./img/image0.png" alt=""></div>
        <div class="daughter"><img src="./img/image1.png" alt=""></div>
        <div class="daughter"><img src="./img/image2.png" alt=""></div>
        <div class="daughter"><img src="./img/image3.png" alt=""></div>
    </div>
</div>

и могу ли я добавлять элементы в нужном мне порядке?
Например так:
<div class="GrandMuther">
    <div class="uncle"></div>
    <div class="Muther">
        <div class="daughter"><img src="./img/image0.png" alt=""></div>
        <div class="daughter"><img src="./img/image1.png" alt=""></div>
        <div class="daughter"><img src="./img/image2.png" alt=""></div>
        <div class="daughter"><img src="./img/image3.png" alt=""></div>
    </div>
    <div class="uncle2"></div>
</div>
  • Вопрос задан
  • 116 просмотров
Решения вопроса 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
если элемент с классом "GrandMuther" всего 1, то так:
const sourceElement = document.querySelector('.GrandMuther');

// во что заворачивать
const wrapper = document.createElement('div');
wrapper.classList.add('Mother');

Array.from(sourceElement.children)
  .forEach(el => wrapper.appendChild(el));
sourceElement.appendChild(wrapper);
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@GrayHorse
С помощью append, after, createElement.

https://learn.javascript.ru/modifying-document

querySelector также пригодится для уже существующих нод.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы