2

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

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

我怎样才能让 jquery 找出最后一行上的哪些项目,并应用一个类,以便我可以将特定样式应用于这些项目?

4

1 回答 1

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 个项目。

于 2013-11-04T20:14:50.957 回答