Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 交替使用第n个子项和第n个类型的行颜色_Javascript_Html_Css - Fatal编程技术网

Javascript 交替使用第n个子项和第n个类型的行颜色

Javascript 交替使用第n个子项和第n个类型的行颜色,javascript,html,css,Javascript,Html,Css,与重复通知相反,这个问题不是重复的。声称的副本并没有解决嵌套的问题,我在问题中已经清楚地解释了这一点 我有一个表,其中行可以有两个类之一:parent或child。有些父母有很多孩子,而有些父母没有孩子。表的HTML结构是扁平的,不能表示行之间的层次关系;父母和孩子都是trs。例如: Parent A Child 1 Child 2 Parent B Parent C Child 1 我想为行添加条纹,以便奇数和偶数父行具有颜色,并且它们各自的子行将具有较浅的父行颜色阴影 请参阅包含的代

与重复通知相反,这个问题不是重复的。声称的副本并没有解决嵌套的问题,我在问题中已经清楚地解释了这一点

我有一个表,其中行可以有两个类之一:
parent
child
。有些父母有很多孩子,而有些父母没有孩子。表的HTML结构是扁平的,不能表示行之间的层次关系;父母和孩子都是
tr
s。例如:

Parent A
Child  1
Child  2
Parent B
Parent C
Child  1
我想为行添加条纹,以便奇数和偶数父行具有颜色,并且它们各自的子行将具有较浅的父行颜色阴影

请参阅包含的代码片段,以获取我试图实现的示例

表格{
边界塌陷:塌陷;
宽度:100%;
}
运输署{
边框:1px实心#eee;
填充:10px;
}
parentOdd先生{
背景色:#eb94fa;
}
parentEven先生{
背景色:#c294fa;
}
oddChild先生{
背景色:#f2c4fa;
}
伊文查尔德先生{
背景色:#d8bbfd;
}

父A
A1
A2
父母B
父C
C1
C2
父D
D1
D2

为什么不做一些javascript呢

var RowNumber = 0,

for(i = Rownumber + 1; i<=x*;i++) {
If (RowNumber % === 0) {
 this.setAttribute('class', 'even');
} else {
 this.setAttribute('class', 'odd');
}
});
var RowNumber=0,

对于(i=Rownumber+1;i是否有任何理由不使用多个
s?
对行进行分组可以使操作变得简单

表格{
边界塌陷:塌陷;
宽度:100%;
}
运输署{
边框:1px实心#eee;
填充:10px;
}
t正文:第n个子(奇数)>tr{/*奇数子*/
背景色:#f2c4fa;
}
t正文:第n个子项(奇数)>tr:n个子项(1){/*奇数父项*/
背景色:#eb94fa;
}
tbody:n个孩子(偶数)>tr{/*偶数孩子*/
背景色:#d8bbfd;
}
tbody:n个子级(偶数)>tr:n个子级(1){/*偶数父级*/
背景色:#c294fa;
}

父A
A1
A2
父母B
父C
C1
C2
父D
D1
D2
检查此解决方案:

表格{
边界塌陷:塌陷;
宽度:100%;
}
运输署{
边框:1px实心#eee;
填充:10px;
}
parentOdd先生{
背景色:#eb94fa;
}
.父母奇数。子女:第n个子女(奇数){
背景色:#F2C9F9;
}
.父母奇数。子女:第n个子女(偶数){
背景色:#F9E1DC;
}
parentEven先生{
背景色:#c294fa;
}
.parent偶数。子项:第n个子项(奇数){
背景色:#E1CCFC;
}
.parent偶数。子项:第n个子项(偶数){
背景色:#EEE5FA;
}

父A
A1
A2
父母B
父C
C1
C2
父D
D1
D2

这显然不是一个重复。请收回你的近距离投票。另一个问题并不是解决父母在孩子身上的嵌套问题。我在我的问题中已经清楚地解释过了。请在结束投票前考虑阅读整个问题。ch会导致有效问题被错误地关闭。我想JS不会那么棘手,可以给你一个更快的解决方案。我已经取消了关闭投票,尽管我仍然认为它实际上是重复的,因为解决方案需要重新构造HTML。有多少子代会有限制吗?我可以用CSS来做(有点刻薄)如果子项的数量有限。@Chad没有,但肯定总是在10秒内。即使这改变了HTML结构,它也是侵入性较小的更改,也是CSS解决方案的最佳选择+1@Chad显然,在一个表中有多个tbody元素是可能的。请看:这是一个很好的解决方案。遗憾的是,它使标记变得凌乱,但却是一个错误至少它是有效的。“当没有任何元素是父元素的子元素时,HTML表体元素()将一行或多行定义为其父元素的主体。”我认为他只想通过使用
.parent
.child
来模拟他的示例代码。