在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