使用jquery查找<ul>中的最后一行并应用类</ul>

时间:2013-11-04 20:06:32

标签: jquery css css-selectors

我的无序列表会浮动每个项目,以便3个项目出现在一行中。

我需要将某种风格应用于项目的底线。我目前正在使用:: nth-child伪类,但问题在于其中一些列表在最后一行上有1,2或3个项目。

如何让jquery找出最后一行中的哪些项目,并应用一个类,以便我可以为这些项目应用特定的样式?

1 个答案:

答案 0 :(得分:4)

不确定它是否是最佳解决方案,但是这里有一个使用mod运算符来查找最后一行中的数字:

http://jsfiddle.net/V8edM/

$('ul').each(function () {
    var $lis = $('li', this);
    var count = $lis.length;

    if (count < 4) {
        $lis.addClass('last-row');

    } else {
        var numberInLastRow = count % 3 || 3;
        $lis.eq(-1 * numberInLastRow - 1).nextAll().addClass('last-row');

    }
});

编辑 - 更新为少于4个项目。