时间:2021-05-25
先来看一个简单的方法。
在 css 中定义两种样式 .odd{...} 和 .even{...} 分别用于奇数行和偶数行的不同背景颜色。在网页加载后通过 javascript 获取要变色的标签列表,执行如下代码:
实现不同行的不同颜色,这样变完全在前端处理,不会与后端的逻辑混淆,是一种比较好的解决方案。
那么这种代码实现起来效果基本上是这样的:
不过,这种方法存在一些问题:
将其代码进行改进并移入到一个单独的函数中去:
/** * 此方法用于列表的隔行变色效果,可以灵活得为指定ID的列表指定隔行的颜色。 * * @param id 列表的id * @param item 要变色的行的标签 * @param odd 奇数行的样式类名,如果不指定,则默认为odd * @param even 偶数行的样式类名,如果不指定,则默认为even * @param start 开始变色的行的索引,如果不指定,则默认为0 * @param end 结束变色的行的索引,如果不指定,则默认为列表长度 */function rowRender(id, item, odd, even, start, end) { // 获取列表容器 var list = document.getElementById(id); // 获取列表 var items = list.getElementsByTagName(item); // 修正初始位置,如果不是一个数字或者越界,则从0开始 if (isNaN(start) || (start < 0 || start >= items.length)) { start = 0; } // 修正结束位置,如果不是一个数字或者越界,则为列表末尾 if (isNaN(end) || (end < start || end >= items.length)) { end = items.length; } // 如果没有指定odd,则默认为'odd' odd = odd || 'odd'; // 如果没有指定even, 则默认为'even' even = even || 'even'; // 遍历列表并渲染效果 for (var i = start; i < end; i++) { var className = ' ' + ((i % 2 == 0) ? odd : even); items[i].className += className; }}用法:
示例:
Table 1
Table 2
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了JS+CSS实现Li列表隔行换色效果的方法。分享给大家供大家参考。具体实现方法如下:复制代码代码如下:CSS+Js实现Li列表隔行换色效果.myt
本文实例讲述了JS+CSS实现表格高亮的方法。分享给大家供大家参考。具体如下:这里使用JavaScript+CSS实现表格高亮的功能,实际上类似于隔行换色的效果
今天用一种简洁的方法toggleClass()实现了隔行换色:代码如下:复制代码代码如下:隔行换色body,table,td,{font-family:Aria
今天用一种简洁的方法toggleClass()实现了隔行换色:代码如下:复制代码代码如下:隔行换色body,table,td,{font-family:Aria
本文实例为大家分享了jQuery实现表格隔行换色的具体代码,供大家参考,具体内容如下使用JQ完成表格隔行换色$(function(){$("tbodytr:od