Подтвердить что ты не робот

Jquery: отменить заказ

Как мне изменить порядок с помощью jquery?

Я попробовал такое предложение, но это не сработает!

$($(".block-item").get().reverse()).each(function() { /* ... */ });

Посмотрите здесь.

Я хочу, чтобы boxed был перестроен следующим образом:

18
17
16
etc

Спасибо.

4b9b3361

Ответ 1

Если у вас есть контейнер вокруг списка, это немного проще:

$("#container").append($(".block-item").get().reverse());

http://jsfiddle.net/BhTEN/12/

Ответ 2

Вы можете использовать это:

$($(".block-item").get().reverse()).each(function (i) {
    $(this).text(++i);
});

Демо здесь.
Вторая демонстрация здесь (изменение позиционирования элементов DOM).

Другой способ, используя также jQuery с reverse:

$.fn.reverse = [].reverse;
$(".block-item").reverse().each(function (i) {
    $(this).text(++i);
});

Эта демонстрация здесь.
Вторая демонстрация здесь (изменение позиционирования элементов DOM).

Еще одна альтернатива - использовать length (количество элементов, соответствующих этому селектору), и спуститься оттуда с помощью index каждой итерации. Затем вы можете использовать это:

var nr_of_divs = $(".block-item").length;
$(".block-item").each(function (i) {
    $(this).text(nr_of_divs - i);
});

Эта демонстрация здесь
Вторая демонстрация здесь (изменение позиционирования элементов DOM).

Еще один, относящийся к приведенному выше:

var nr_of_divs = $(".block-item").length;
$(".block-item").text(function (i) {
    return nr_of_divs - i;
});

Демо здесь

Ответ 3

Ваш код работает. Просто выберите jQuery framework в левой руке.

 $($(".block-item").get().reverse()).each(function() {
     $(this).appendTo($(this).parent());
 });

Ответ 5

попробуйте следующее:

function disp(divs) {
      var a = [];
      for (var i = 0; i < divs.length; i++) {
        a.push(divs[i].innerHTML);
      }
    alert(a);
    }

    disp( $("div.block-item").get().reverse() );

DEMO