jQuery, 960.gs — применение классов «альфа» и «омега» к каждому 1-му и 4-му разделу

Я создаю макет, используя систему сетки 960, и элементы div отображаются автоматически. Мне нужно иметь возможность применять класс «альфа» к первому и классу «омега» к четвертому, например. div-alpha,div,div,div-omega,div-alpha,div,div,div-omega.

Используя приведенный ниже код, он применяет альфа-класс ко всем элементам div:

var n = $("div.item").length;

    $('div .item').filter(function(index) {
    return n % 5 == 1;
        }).addClass('alpha');

        $('div .item').filter(function(index) {
    return n % 5 == 5;
        }).addClass('omega');

Как я могу этого добиться? Спасибо заранее.


person areid    schedule 01.07.2011    source источник
comment
n % 5 == 5 ‹--- это всегда будет возвращать false. Вы имели в виду n% 5 == 0?   -  person Rick Liddle    schedule 01.07.2011


Ответы (2)


Вы можете сделать:

var divs = $("div.item");
var length = divs.length
divs.eq(3).addClass('omega');
divs.eq(0).addClass('alfa');
divs.eq(length-1).addClass('omega');

если есть контейнер, содержащий все ваши элементы div, вы также можете использовать селектор nth-child()

person Nicola Peluchetti    schedule 01.07.2011

Попробуй это

var n = $("div.item").length;

    $('div .item').filter(function(index) {
    return index % 5 == 1;
        }).addClass('alpha');

        $('div .item').filter(function(index) {
    return index % 5 == 5;
        }).addClass('omega');
person ShankarSangoli    schedule 01.07.2011