2012-03-20 56 views
2

我想。第四加入到第四。服務列表時,其內部:如果父類有X,則做到這一點,要不然這

<section class="sixteen"> 

當它是任何其他類我想。第三添加到第三個.service-list。

e.g

if ($("section").hasClass("sixteen")) { 

    $('div.service-list').filter(function(index){ 
    return (index%4 == 3); 
    }).addClass('fourth'); 

} else { 

    $('div.service-list').filter(function(index){ 
    return (index%3 == 2); 
    }).addClass('third'); 
} 

然而,這似乎找到頁面上的任何.sixteen。我只是想要檢查.service-list的父級。

目前正在尋找另一個.sixteen頁面,並在需要時添加.fourth .third,因爲它位於較小的網格內。

這裏是一個的jsfiddle:http://jsfiddle.net/Xu3Yq/

+0

你的問題有點不清楚。這聽起來像你有兩節「十六」課。其中之一需要添加「第四」,其中一個需要添加「第三」,因爲它更小。你應該如何區分兩者? – mrtsherman 2012-03-20 02:25:48

+0

對不起,mrtsherman,這有點難以解釋。我需要在一個更大的列(十六)內的.service-list div來讓每個第四個div都有一個類。當它不是大柱時,需要第三個附件。 我遇到的問題是,如果另外16個類位於頁面某處(不管是否存在.service-list),則會追加第四個類。 – Justin 2012-03-20 03:18:28

回答

2

如何:

$('section')​​​​​​​.each(function() { 
    var $this = $(this); 

    if ($this.hasClass('sixteen')) { 
     $this.find('div.service-list:eq(3)').addClass('fourth'); 
    } else { 
     $this.find('div.service-list:eq(2)').addClass('third'); 
    } 
});​ 

http://jsfiddle.net/mzwqD/

+0

這是一個治療zerkms! – Justin 2012-03-20 03:16:35