Считать дочерние DIVs + добавить класс - PullRequest
1 голос
/ 15 июля 2010

У меня есть следующий бит кода для отображения миниатюр на странице:

<div id="gallery"> <div class="thumbnail"> <img src="" /> </div> </div>

Это будет цикл, чтобы показать 15 .thumbnail DIV.хотел бы прикрепить класс ".last" к 5-му и 10-му DIV.И для 11-15-го DIVs класс ".bottom-last".

Я понимаю, что это путь: http://api.jquery.com/length/, но не могу найти способ получить счетзатем прикрепил класс.

Есть указатели?

Большое спасибо

Ответы [ 3 ]

4 голосов
/ 15 июля 2010

Вот один из способов, если вы не против синтаксиса.(конечно, вы также можете легко использовать традиционное выражение if())

Попробуйте: http://jsfiddle.net/bBgTs/1/

$('#gallery .thumbnail').addClass(function(i) {
    return ((i == 4 || i == 9) && 'last') || (i > 9 && 'bottom-last');
});
4 голосов
/ 15 июля 2010

использовать каждый метод, который передает индекс в качестве параметра.

$('#gallery .thumbnail').each( function(idx){
if (idx==4 || idx==9)
  $(this).addClass('last');
if (idx > 9)
  $(this).addClass('bottom-last');
} );

обратите внимание, что цифры равны 1 минус то, что вы хотите, потому что индекс начинается с нуля

2 голосов
/ 15 июля 2010
$(".thumbnail:eq(4), .thumbnail:eq(9)").addClass("last");
$(".thumbnail:gt(9)").addClass("bottom-last");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...