jQuery .first () и .last () работают по-разному? - PullRequest
3 голосов
/ 18 октября 2011

Итак, я создаю простой элемент управления слайд-шоу с этой разметкой:

<div class="previous"> </div>
<div class="next"> </div>
<div class="gallery"> </div>
    <div class="image-0"> </div>
    <div class="image-1"> </div>
    <div class="image-2"> </div>
    <div class="image-3 active"> </div>
    <div class="image-8"> </div>
    <div class="image-9"> </div>
    <div class="image-10"> </div>
    <div class="image-11"> </div>
</div>

и пытаюсь ориентироваться с помощью jQuery следующим образом:

$('.next').click(function() {

    $('.active').next().addClass('active');
    $('.active').first().removeClass('active');


  });
$('.previous').click(function() {

    $('.active').prev().addClass('active');
    $('.active').last().removeClass('active');

});

Итак,Первый блок jQuery работает должным образом, сначала назначая класс active следующему элементу div, а затем удаляя его из первого.Второй блок должен делать это наоборот, но не удаляет ли класс из последнего элемента после добавления его к предыдущему.

Подхожу ли я к этой проблеме с другой стороны?Или функции first () и last () работают по-разному?Из того, что я мог бы сказать из документации JQuery, это должно работать.

1 Ответ

3 голосов
/ 18 октября 2011

Я создал jsfiddle с вашим кодом, и он отлично работает: http://jsfiddle.net/K5vN4/

(используйте Firebug или аналогичный для проверки области "Результат" скрипки.)

...