jQuery переместить элемент списка в конец списка - PullRequest
11 голосов
/ 28 сентября 2010

У меня есть этот список, который можно отсортировать с помощью сортировки. Как я могу переместить элемент li с классом .neutral в конец списка после завершения сортировки?

$(".thumbs").sortable({
    stop: function(event, ui) { 
        // move .neutral at the end of this list
    }
});

<ul class="thumbs">
    <li>red</li>
    <li>green</li>
    <li class="neutral">none</li>
    <li>yellow</li>
    <li>blue</li>
<ul>

Ответы [ 2 ]

9 голосов
/ 28 сентября 2010

Вы можете добавить (переместить) их в конец списка с помощью .appendTo(), например:

$(".thumbs").sortable({
    stop: function(event, ui) {
      $(this).find('.neutral').appendTo(this);
    }
});

Вы можете попробовать здесь , он получает все элементы .neutral внутри и добавляет их к this, то есть к ul.thumbs, в котором мы сейчас находимся, это будет работать и для нескольких независимых списков миниатюр.

3 голосов
/ 28 сентября 2010

Эквивалент будет следующим:

$(".neutral").appendTo(".thumbs");
OR
$(".thumbs").append(".neutral");

Вы можете перемещать элемент по странице, выбрав его и добавив или добавив его в другом месте.

NB: будьте осторожны с областью действия - если вы используете классы, и этот пользовательский интерфейс появляется на странице несколько раз, вышеупомянутые селекторы должны быть ограничены текущим экземпляром, используя параметр ui, переданный в функцию stop. 1007 *

...