网页中数据表的设计往往采用格行变色的方法修饰表格,不仅看起来美观也一定程度上提升用户体验。传统的方法是用JavaScript来实现,今天我们来看看具体的实现方法。的确很简单哦。
先看最终效果图:

表格的代码可以任意写,或者直接从DreamWeaver里面拉。最重要的是JavaScript代码,如下:
window.onload = function(){ //浏览器载入时执行函数 var tr = document.getElementsByTagName("tr"); //获取文档中的tr元素。此时变量tr是个对象数组 for ( i=0; i<tr.length; i++){ if (i%2 == 0){ //奇数行给tr元素添加ctr类属性 tr[i].className += "ctr"; } tr[i].onmouseover = function(){ this.className += " trhover"; //鼠标经过每个tr时追加给tr元素trhover类属性 } tr[i].onmouseout = function(){ this.className = this.className.replace(" trhover",""); //鼠标离开每个tr时移除掉tr元素trhover类属性 } }}
接下来的工作很简单了,就是把批段代码加入到你网页的script标签中。
简单实用的小代码。
JS用多了好卡
隔行换色确实很注重用户体验的@
@0cai 呵呵。我想也是嘛^!^
不错,用JavaScript比用css更方便
各行换色,在表格中,以及在留言中,还是非常好看的,未经分明,看上去非常舒服的!
@365hope 呵呵,那是,更重要的是增加了用户体验。
怎么不用JQ实现呢,现在我都习惯了用JQ写JS了
@大剑 呵呵,我正在研究JS所以用JS实现,感觉代码也挺简单的,也不错。
为什么不用css呢?
这个好…
@安 安的留言总是言简意赅,一针见血^!^
技术型博主啊,颈仰啊
@feicun 嘿嘿。最近在研究JS呢,所以会写一些这方面的文章。
本来有用过,但是被我去掉了。。。
@万戈 这个我感觉还是在数据显示的时候会有用。
都是通过jquery来实现的,原来javascript也代码比较少,就是不知道执行效率哪个高一点呢?
@hongmop JQuery做起来是方便很多,它是纯JS对象实现。而JavaScript则是用一些基本的数据结构和dom实现的。从这个例子看来这种方法的时间复杂度回比较高。具体哪个效率高我也拿不准。
好像有纯css的方式的
@sleepy 对啊。确实有纯CSS实现的,不过用起来不方便还添加很多额外的DIV。最重要的是可定制性不高,不适合做信息量大的表格!