下面应该从带有.graphedRow类的表中获取第n行。它适用于第一行,但不适用于其他行。
答案 0 :(得分:4)
请尝试使用.eq()
。
$('#someTable tbody .graphedRow').eq(pointIndex+1).css('background-color', '#FEFF9F');
虽然应该注意eq()
从0开始索引。
在Firebug中进行了一些测试。
在这种情况下, :nth-child
略快于.eq()
。 (快了几百分钟)
此外,:nth-child
工作正常,但它的索引基于#someTable tbody
的所有子项。它只返回类.graphedRow
的那些。
所以看看你的JSFiddle,<tr>
中有6个<tbody>
,其中三个有.graphedRow
类(那将是第1,第4和第6 <tr>
)因此,:nth-child(1)
,:nth-child(4)
,:nth-child(6)
会选择这些。
:nth-child
的索引仍然会因#someTable tbody
的其他孩子(其他<tr>
没有班级的孩子而增加)
其中_ .eq()
的索引是基于.graphedRow
<{1}}中出现的#someTable tbody
的多个实例
答案 1 :(得分:2)
使用
$('#someTable tbody > tr:nth-child('+index+')').css('background-color', '#FEFF9F')