jQuery(document).ready(function($) { if ($('.category-sidebar')) { var $filterWrap = $('#filter-wrapper .filter-container'); $('#narrow-by-list').empty(); $filterWrap.each(function (index) { var $currFilter = $(this); var $divParent = $currFilter.closest('.filter-container'); var divHeader = $currFilter.find('.toggle-category-header').text().trim(); /*if (divHeader === 'Color') { $divParent.appendTo('#narrow-by-list'); } else if (divHeader === 'Clothes Size') { $divParent.appendTo('#narrow-by-list'); } else if (divHeader === 'Price') { $divParent.appendTo('#narrow-by-list'); } else if (divHeader === 'Product Type') { } else if (divHeader === 'Shop By Figure') { }*/ switch (divHeader) { case 'Color': case 'Clothes Size': case 'Price': $divParent.appendTo('#narrow-by-list'); break; case 'Product Type': case 'Shop By Figure': $divParent.appendTo('#narrow-by-list :last-child'); break; } }); } });$filterWrap es el contenedor que contiene cinco elementos de la barra de navegación lateral que son todos divs
#narrow-by-list es una etiqueta que contiene #filterwrapper que contiene los 5 divs
Quiero poder reordenar los divs y colocarlos dentro del mismo contenedor, por lo que ahora son:
Color
Comprar por figura
tipo de producto
Tamaño de la ropa
Precio
Quiero que la lista de divs se reordene a:
El código anterior ordena los tres primeros pero no puede ordenar los dos últimos. ¿Pueden ayudar?
ordene su matriz antes de hacer un bucle con yourArray.sort() , puede eliminar todo el DOM anterior y volver a procesar cada vez que cambie la clasificación