@ggtt21

Как сделать перенос только определённых элементов с помощью jQuery?

Найдите теги div, стоящие непосредственно после h3 и переместите каждый div-элемент так, чтобы он встал непосредственно над h3.

Задачу нужно решить с помощью jQuery.
Это код HTML, по условию задачи его изменять нельзя.
<h3>header1</h3>
<div>text1</div>
<h3>header2</h3>
<div>text2</div>


Как я понял, должно получится что-то вроде:
text1
header1
text2
header2
  • Вопрос задан
  • 69 просмотров
Решения вопроса 1
@ggtt21 Автор вопроса
Вуаля! Решилось как-то так:
let $d = $("div");
let $h = $("h3");
$d.eq(0).attr("id", "first_div");
$h.eq(0).attr("id", "first_h");
$("#first_div").insertBefore("#first_h")
$d.eq(1).attr("id", "second_div");
$h.eq(1).attr("id", "second_h");
$("#second_div").insertBefore("#second_h")

Призначаем отдельным элементам класс и уже по классу их размещаем, возможно глупо немного, но по другому не придумал... Если у кого нибудь есть идеи как улучшить этот код - поделитесь пожалуйста!
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@alekcena
Нелинейный наставник
Получаем все эти элементы.
Формируем из них масив.
Разворачиваем масив, или идём с конца по нему. и вставляем в родительскую ноду.
Ответ написан
Ваш ответ на вопрос

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

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