在jQuery中,我想添加一个类到所有可见的元素是第五个孩子或更大,另一个类不是第四个孩子的每个元素。然而限制:第n个孩子的结果为可见元素
$overlay.find('> .container .content .selector').not(':nth-child(4n)').addClass('hasRightMargin');
$overlay.find('> .container .content .selector:nth-child(n+5)').addClass('hasTopMargin');
,现在我切换第一.selector
的知名度,并:nth-child
没有考虑知名度考虑,所以这也不行,因为我想,因为它仍然计数:以前,我这样做隐形元素:
$overlay.find('> .container .content .selector:visible').not(':nth-child(4n)').addClass('hasRightMargin');
$overlay.find('> .container .content .selector:visible:nth-child(n+5)').addClass('hasTopMargin');
有没有办法做我想在一个选择器?或者我将不得不使用each
遍历所有.selector
元素并在手动过滤它们?
所以你试图选择屏幕上每隔4个可见元素以外的其他东西? – EvilAmarant7x 2011-03-24 18:25:15
我也认为你应该将'5th元素或更高'的选择器更改为:gt(4)。我觉得它不那么令人困惑,而应该让它与你的可见选择器一起工作。 – EvilAmarant7x 2011-03-24 18:35:51
@Evil是的。第二行应该选择所有可见的元素,但前四个。 – Aistina 2011-03-24 18:36:00