Jquery 表行奇偶重设
我用的是:Jquery 表行奇偶重设,jquery,css,html-table,Jquery,Css,Html Table,我用的是: jQuery("tr:odd").css("background-color", "#f5f5f5"); jQuery("tr:even").css("background-color", "#ececec"); 只需简单地为交替的表行添加背景色,效果很好。问题是,如果在同一页中有多个表,它只会不断向下迭代每个表,而不是为每个表重置并启动新的表。我的th背景色与偶数行的颜色相同,因此最终它会赶上,我有一个th和tr的背景色是相同的,因此看起来像一个大行 如何使用jquery的这两行
jQuery("tr:odd").css("background-color", "#f5f5f5");
jQuery("tr:even").css("background-color", "#ececec");
只需简单地为交替的表行添加背景色,效果很好。问题是,如果在同一页中有多个表,它只会不断向下迭代每个表,而不是为每个表重置并启动新的表。我的th
背景色与偶数行的颜色相同,因此最终它会赶上,我有一个th
和tr
的背景色是相同的,因此看起来像一个大行
如何使用jquery的这两行,但如果页面上有多个表,如何使其重新开始?首先选择表,然后查找子行:
jQuery("table").find("tr:odd").css("background-color","#f5f5f5");
使用相同的方法减少字符。尝试在下面的上下文中使用
表格
jQuery("tr:odd", 'table').css("background-color", "#f5f5f5");
jQuery("tr:even", 'table').css("background-color", "#ececec");
完美。我会接受,只要它让我,说12分钟以上。这仍然适用于我所有的表。你能用ID引用一个特定的表吗?我想,我可以使用这样的ID标记:jQuery(“#myTable tr:odd”).css(“背景色”,“#EFF3FB”);谢谢你的快速回答。这也行得通,所以我要投赞成票。碰巧首先得到了Blazemonger的答案。您使用jQuery而不是纯CSS进行此操作有什么特别的原因吗?只是为了跨浏览器兼容性。我不认为第n个孩子得到了充分的支持,尤其是在IE的旧版本中。我错了吗?。jQuery在较新版本中已经放弃了对IE9之前版本的支持:FWIW没有对
n个子项
进行检测,但它对最后一个子项
进行非核心检测,这(可能)在相同的浏览器上受支持。您可以对支持它的浏览器使用纯CSS,对不支持JS的浏览器使用Modernizer detect。我没有想到使用:n子项(奇数)
而不是:奇数
会产生不同的结果。
jQuery("table tr:nth-child(odd)").css("background-color", "red");
jQuery("table tr:nth-child(even)").css("background-color", "yellow");