2015-12-04 25 views
0

我在一个容器中保留了一些元素。为了更好的能见度,奇怪的元素有其他背景色有时候我需要用条件过滤元素,所以不需要的元素我会移动到另一个类中,但似乎没有孩子保持旧状态。即使我使用jQuery动态化它仍保持旧状态。更改类别时,第n个孩子(奇数)无法正常工作

我宁愿保留在同一容器中使用和未使用的元素 - 如果我将它们分开并更改过滤器,则需要再次对可见元素进行排序。

jsfiddle: http://jsfiddle.net/ex4740n2/5/ 

你有什么想法如何解决它?
在此先感谢!

+2

问题寻求帮助调试(“为什么不是这个代码的工作?”)必须包括所期望的行为,一个特定的问题或错误的和必要的重现它最短的代码**在问题本身**。请不要忽视规则。但我猜你的问题是你认为'nnth-child'是一个类选择器 - 不是,它是一个元素选择器:http://stackoverflow.com/questions/5428676/nth-child-doesnt-respond-to -class – Pete

+0

元素只能隐藏。它们仍然存在,所以它们仍然被认为是偶数/奇数索引的一部分。 – nderscore

+0

我把代码,检查jsfiddle链接。 @Pete但是,我想这是一个类选择器。 – Synchro

回答

0

答案由@Pete:

But I'm guessing your problem is that you think nth-child is a class selector - it's not, it's an element selector 

所以,如果无法通过只CSS使它,它使用JS做。迭代可见元素并更改背景颜色。

var visibled = $(".item"); 

for (var i = 0; i < visibled.length; i += 2) { 
    $(visibled[i]).css("background-color", "rgba(190, 255, 196, 1)"); 
    $(visibled[i + 1]).css("background-color", ""); 
}