JavaScript简单实现表格格行换色

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

先看最终效果图:

 

js-table-color-changing

表格的代码可以任意写,或者直接从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标签中。

点击查看效果及源码

JavaScript简单实现表格格行换色》上有 20 条评论

    • @hongmop JQuery做起来是方便很多,它是纯JS对象实现。而JavaScript则是用一些基本的数据结构和dom实现的。从这个例子看来这种方法的时间复杂度回比较高。具体哪个效率高我也拿不准。

    • @sleepy 对啊。确实有纯CSS实现的,不过用起来不方便还添加很多额外的DIV。最重要的是可定制性不高,不适合做信息量大的表格!

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

注意: 评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。例如, ABC是本文的评论者之一,则使用'@ABC '(不包括单引号)将会自动将您的评论发送给ABC。使用'@all ',将会将评论发送给之前所有其它评论者。请务必注意user必须和评论者名相匹配(大小写一致)。