No tengo ningún problema para obtener una lista de elementos y ordenarlos alfabéticamente, pero tengo dificultades para entender cómo hacerlo con un módulo.Ordenando una lista alfabéticamente con un módulo
### ### ACTUALIZACIÓN
Aquí está el código de trabajo 'a mi manera', sin embargo, me gusta la reutilización de la respuesta proporcionada a continuación más, así que he aceptado esa respuesta.
<script type="text/javascript">
$(document).ready(function() {
$('.sectionList2').each(function() {
var oldList = $('li a', this),
columns = 4,
newList = [];
for(var start = 0; start < columns; start++){
for(var i = start; i < oldList.length; i += columns){
newList.push('<li><a href="' + oldList[i].href + '">' + $(oldList[i]).text() + '</a></li>');
}
}
$(this).html(newList.join(''));
});
});
</script>
Por ejemplo. Supongamos que tengo la siguiente lista desordenada:
<ul>
<li><a href="~">Boots</a></li>
<li><a href="~">Eyewear</a></li>
<li><a href="~">Gloves</a></li>
<li><a href="~">Heated Gear</a></li>
<li><a href="~">Helmet Accessories</a></li>
<li><a href="~">Helmets</a></li>
<li><a href="~">Jackets</a></li>
<li><a href="~">Mechanic's Wear</a></li>
<li><a href="~">Pants</a></li>
<li><a href="~">Protection</a></li>
<li><a href="~">Rainwear</a></li>
<li><a href="~">Random Apparel</a></li>
<li><a href="~">Riding Suits</a></li>
<li><a href="~">Riding Underwear</a></li>
<li><a href="~">Socks</a></li>
<li><a href="~">Vests</a></li>
</ul>
Tengo esta lista configurada para mostrar en 4 columnas con cada li flotada a la derecha. Visualmente esto hace que sea difícil encontrar elementos en listas más grandes. La salida que necesito es la siguiente:
<ul>
<li><a href="~">Boots</a></li>
<li><a href="~">Helmet Accessories</a></li>
<li><a href="~">Pants</a></li>
<li><a href="~">Riding Suits</a></li>
<li><a href="~">Eyewear</a></li>
<li><a href="~">Helmets</a></li>
<li><a href="~">Protection</a></li>
<li><a href="~">Riding Underwear</a></li>
<li><a href="~">Gloves</a></li>
<li><a href="~">Jackets</a></li>
<li><a href="~">Rainwear</a></li>
<li><a href="~">Socks</a></li>
<li><a href="~">Heated Gear</a></li>
<li><a href="~">Mechanic's Wear</a></li>
<li><a href="~">Random Apparel</a></li>
<li><a href="~">Vests</a></li>
</ul>
Lo que estoy buscando es una función que me puede pasar a mi gama de elementos de la lista y obtener mi matriz devuelta, ordenadas alfabéticamente, con un módulo de elección; en este caso 4.
Cualquier ayuda sería apreciada ya que no puedo encontrar documentación sobre el tema.
Podría publicar el código que ya tiene? –
Y, asumiendo que está desarrollando esto desde un servidor, ¿por qué no lo hace en el servidor? – Chubas
En realidad, hay una solución CSS para esto, con 'column-count' –