@day-light

Почему при переносе элементов по DOM происходит их дублирование?

день всем)
есть такая задача.
на сайте два меню и я хочу на мобильных второе перенести в первое.
6681c646ac5e3783530018.png

https://test2.dreamclub.dp.ua/
проблема в том, что при переносе элементы дублируются и при переносе получается 6 элементов а не 3
6681c670d881a251039385.png

код

var moved_menu = (".secondary_menu ul li");
if(jQuery(window).width() < 768) {

jQuery (moved_menu).insertAfter(".primary_menu ul li:nth-child(2)");

};

может кто подсказать - почему возникает дубль элементов?
  • Вопрос задан
  • 74 просмотра
Пригласить эксперта
Ответы на вопрос 2
ProgrammerForever
@ProgrammerForever
Учитель, автоэлектрик, программист, музыкант
Из документации:
Description: Insert every element in the set of matched elements after the target.

Т.е. это не перемещение элемента как таковое, а вставка такого содержимого после каждого элемента из списка. Иначе бы такой элемент вставлялся несколько раз в разные места.
Ответ написан
Комментировать
@alexalexes
insertAfter
Вам нужен не этот метод. Для перемещения узлов в пределах родителя используется replaceChild.
PS:
".primary_menu ul li:nth-child(2)"
Научитесь захватывать узлы нативными методами querySelector и querySelectorAll.
Нет причин использовать JQuery в вашей задаче.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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