Как обратиться к первому и последнему jQuery(this) в each()

Есть цикл:

jQuery(window).load(function(){
  jQuery('#slick-single-slider .slick-slide:not(.slick-cloned)').each(function(){
    jQuery(this).addClass('ne-clon');
  });
});

Он работает, помечает все необходимые элементы классом. Подскажите, пожалуйста, как теперь обратиться к первому и последнему элементу внутри этого цикла?


Ответы (1 шт):

Автор решения: OPTIMUS PRIME

Функция, переданная в each, в качестве первого параметра получает номер очередного элемента. Соответственно, 0 — первый, весь_список.length - 1 — последний.

var $not_cloned = $('#slick-single-slider .slick-slide:not(.slick-cloned)');

$not_cloned.each(function(i) {
  $(this).addClass('ne-clon');

  if (i == 0 || i == $not_cloned.length - 1) {
    console.log("Первый или последний", i);
  }
});

Можно и вне цикла, сразу к ним и обратиться ↓

var $not_cloned = $('#slick-single-slider .slick-slide:not(.slick-cloned)');

$not_cloned.each(function(i) {
  $(this).addClass('ne-clon');
});

$not_cloned.first().css("border", "5px solid red");
$not_cloned.last().css("border", "5px solid red");
→ Ссылка