Как сделать из длинного списка (li) списки (ul) по 10 элементов li.
К примеру, есть один список, в котором 30 элементов:
<div class="list">
<ul>
<li></li>
...
<li></li>
</ul>
</div>
На выходе нужно получить 3 списка по 10 элементов вместо одного большого:
<div class="list">
<ul>
<li></li>
...
<li></li>
</ul>
<ul>
<li></li>
...
<li></li>
</ul>
<ul>
<li></li>
...
<li></li>
</ul>
</div>
Я было нашёл функцию, которая это делает:
$('.list').each(function() {
var group;
while((group = $(this).find('li:lt(10)').remove()).length) {
$(this).append($('<ul/>').append(group));
}
});
Да, обязательно, классов list будет несколько, поэтому для каждого нужно сделать обработку, и тут проблема - попадаем в рекурсию.
Если написать:
$('body').append($('<ul/>').append(group));
то всё нормально, но ведь нужно "переделать" исходный список, а не вставлять его в body. Подскажите, как это сделать?