1

我在同一个文档中有多个表格,并希望从每个表格的第一个 tbody 行开始添加行颜色。

我有以下代码

$('table tbody tr').filter(':even').not('.spacer, .hidden, thead tr, tfoot tr').addClass('even');

但是,它并没有完全按照我的意愿工作。任何人都可以帮助上面的代码,这样我就可以确保行突出显示从每个表的第一个 tbody 行开始,无论页面上显示了多少表?

4

3 回答 3

1

您是否在这里查看过:斑马条纹(来自 jQuery Docs)。

无论如何,试试这个代码,它的工作原理:

<script src="jquery.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $("table tr").mouseover(function(){$(this).addClass("over");}).mouseout(function(){$(this).removeClass("over");});
        $("table tr:even").addClass("alt");
    });
</script>
于 2012-06-07T08:04:24.467 回答
1

据我所知,这个选择器应该适合你:

$('table tbody tr:first-child').addClass('even');

编辑

如果您希望每隔一行进行条带化,从第一行开始,您需要这样:

// ... and adding the .even class to :odd rows is just weird.
$('table tbody tr:nth-child(odd)').addClass('even');
于 2012-06-07T08:04:50.917 回答
0

将其更改为$('table tbody:first-child tr:first-child')确保将选择所有表中第一个 tbody 的第一行,然后添加其他条件。

http://jsfiddle.net/hnG5w/

于 2012-06-07T08:04:59.940 回答