Как избавиться от ошибки 'Failed to execute 'insertBefore' on 'Node': parameter 1 is not of type 'Node''??

При адаптиве страницы переношу элементы с одного блока в другой,
все работает, но при каждом перемещении ошибка в js
Failed to execute 'insertBefore' on 'Node': parameter 1 is not of type 'Node'

.header__inner-list.header__list#header-list.show
  .header__list-cart
    a(class="header__list-link cart-link" href="#") Cart
  .header__list-contact
    a(class="header__list-link contact-link" href="#") Contact

.header__inner-btn.header__btn#header-btn.show
  .header__btn-signin
    a(href="#" class="header__btn-link signin-link") Sign in
  span.btn__order.btn.btn--animate Order Now


let  headerList = document.getElementById('header-list');
let headerBtn = document.getElementById('header-btn');
 
let headerListChilds = headerList.children,
     headerListChildsLength = headerListChilds.length,
     headerBtnChilds = headerBtn.children,
     headerBtnChildsLength = headerBtnChilds.length;

window.addEventListener("resize", function () {
 if (window.matchMedia("(max-width: 768px)").matches) {

  for (let i = 0; i < headerBtnChildsLength; i++) {
   headerList.insertBefore(headerBtnChilds[0], headerListChilds[i + 3]);
  }
 } else {
  for (let i = 0; i < headerListChildsLength; i++) {
   headerBtn.insertBefore(headerListChilds[3], headerBtnChilds[i + 1]);
   headerBtn.insertBefore(headerListChilds[2], headerBtnChilds[i]);
  }
 }
});
  • Вопрос задан
  • 678 просмотров
Пригласить эксперта
Ответы на вопрос 1
Нужно проверить переменную, скорее всего там не нода, или нода неожиданного типа
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы