jQuery表样式与替换行的CSS表样式

时间:2010-07-29 02:55:29

标签: jquery css css-tables

对于在服务器上生成的奇数/偶数行的表使用CSS以及使用jQuery在document.Ready()上设置条纹样式,是否更快/更好?

我想开始使用jQuery来减少我的标记混乱,但我不确定性能,特别是对于较大(最多200行)的表。

2 个答案:

答案 0 :(得分:3)

根据浏览器的不同,您可能无法选择。 jQuery将与IE7等没有第N个子选择器的旧浏览器一起使用。

理想情况下你应该使用css。样式表是样式的最佳去处。

我会将css与旧版浏览器的javascript备份一起使用。例如,如果你想斑马所有表格试试这个:

tr:nth-child(2n+1), tr.odd { background:#911100; }
tr:nth-child(2n), tr.even { background:#222200; }

如果浏览器已经老了,那么在jQuery中添加.odd和.even类。

//You will need to check which browsers don't support n-th child. But I doubt IE will        for example...
if($.browser.msie && $.browser.version < 9) {
  $('tr:odd').addClass('odd');
  $('tr:even').addClass('even');
}

答案 1 :(得分:2)

它还不是100%(无论如何都是在Internet Explorer上),但我通常使用CSS nth-child。例如:

.someclass:nth-child(2n+1) {
    background:#911100;
}

将使每隔一行background: #911100。即使您使用jquery删除行,整洁的事情也会自动重新生成下面的行。