Задать вопрос
@eldar_web

Можно ли воспроизвести сортировку в jquery без appendTo?

Можно ли в jquery сделать сортировку определенных элементов
на месте без использования appendTo?
На примере jsfiddle.net/z2tevonL использована стандартная сортировка.
Там у последних элементов есть классы 'for_sort', так вот, нажимая на кнопку можно ли
сортировать именно эти элементы на их местах, то есть, не поднимая их вверх?
  • Вопрос задан
  • 94 просмотра
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
const $elems = $('.for_sort');
const $sorted = $elems
  .clone(true)
  .sort((a, b) => ($(a).attr('data-sort') - $(b).attr('data-sort')) * order);

$elems.replaceWith(i => $sorted[i]);

или

const elems = document.querySelectorAll('.for_sort');
const sorted = Array
  .from(elems, n => n.cloneNode(true))
  .sort((a, b) => (a.dataset.sort - b.dataset.sort) * order);

elems.forEach((n, i) => n.replaceWith(sorted[i]));
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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