jQuery invirtiendo el orden de los elementos secundarios

¿Cuál es la mejor manera de invertir el orden de los elementos secundarios con jQuery?

Por ejemplo, si comienzo con:

  • A
  • B
  • C

Quiero terminar con esto:

 
  • C
  • B
  • A

Editar: La respuesta de Anurag es mejor que la mía.

 ul = $('#my-ul'); // your parent ul element ul.children().each(function(i,li){ul.prepend(li)}) 

Si llama a .prepend () en un objeto que contiene más de un elemento, el elemento que se anexará se clonará para los elementos de destino adicionales después del primero, por lo tanto, asegúrese de seleccionar solo un elemento.

 var list = $('ul'); var listItems = list.children('li'); list.append(listItems.get().reverse()); 

Prueba esto:

 $(function() { $.fn.reverse = [].reverse; var x = $('li'); $('ul').empty().append(x.reverse()); }); 

Todas las respuestas dadas antes que yo son las mejores, pero puedes probar esto también

 $('#btnrev').click(function(){ $('ul').html($('ul').find('li').get().reverse()); }); 
  
  • 1
  • 2
  • 3
  • 4

un trazador de líneas:

 $('ul').append($('ul>').detach().get().reverse());