2012-03-20 57 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