@Tempest99

Как переставить элементы через DOM?

в коде 2 и 3 пункт меню хочу поменять местами,но не могу понять каким образом это делать...через insertAfter и insertBefore пробовал,но выдает ошибку. Делал так
<ul class="menu">
         <li class="menu-item">Первый пункт</li>
         <li class="menu-item">Третий пункт</li>
         <li class="menu-item">Второй пункт</li>
         <li class="menu-item">Четвертый пункт</li>
       </ul>


var numb = document.getElementsByClassName('menu-item');

document.body.insertBefore(numb[1],numb[3]);
  • Вопрос задан
  • 1052 просмотра
Решения вопроса 2
jasonOk
@jasonOk
Легче болтать, чем код писать
jQuery
$(<htmlElement>).before($(<beforeHtmlElement>));
// $(<htmlElement>).before(<htmlString>);

Vanilla
<htmlElement>.parentNode.insertBefore(<beforeHtmlElement>, <htmlElement>);
// <htmlElement>.insertAdjacentHTML('beforebegin', <htmlString>);


https://jsfiddle.net/4b2j8qL5/4/
Ответ написан
Комментировать
Stalker_RED
@Stalker_RED
Выдавало ошибку потому, что вы пытались вызвать insertBefore для body а нужно было для ul.menu

Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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