当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JS 实现双色表格实现代码

Javascript
JavaScript Break 和 Continue区别教程
JavaScript 特殊字符
JavaScript 指导方针
JavaScript进阶教程(第四课第一部分)
JavaScript初级教程(第一课)
JavaScript初级教程(第五课续)
JavaScript进阶教程(第一课)
JavaScript进阶教程(第二课)
JavaScript进阶教程(第二课续)
JavaScript进阶教程(第三课)
JavaScript进阶教程(第三课第二部分)
setTimeout在类中使用的问题!
如何解决attachEvent函数时,this指向被绑定的元素的问题?
js检测客户端不是firefox则提示下载
在页面上点击任一链接时触发一个事件的代码
仿豆瓣分页原型(Javascript版)
javascript表格控件:Chgrid,简化型
收集的网上用的ajax之chat.js文件
给网站上的广告“加速”显示的方法
在JavaScript中通过URL传递汉字的方法

Javascript 中的 JS 实现双色表格实现代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 359 ::
收藏到网摘: n/a

通过为<tr>元素添加属性或类型选择器,再通过CSS设置可以实现双色表格,但如果表格很长,逐个元素添加可真麻烦。而且这样的代码维护起来不容易。所以比较好的方式是用JS实现。 clip_image001原理其实很简单:利用getElementsByTagName得到所有的<tr>元素,然后分别为奇数项和偶数项的<tr>元素添加背景颜色。
核心代码:
复制代码 代码如下:

<script type="text/javascript" >
function color() {
//把表头设为紫色
var th = document.getElementById("th");
th.style.background = "violet"
//1.得到所有<tr>元素
var trs = document.getElementsByTagName("tr");
var i;
for(i = 1; i <trs.length; i++) {
//2.改变<tr>元素的背景颜色
if(i % 2 == 0) {
trs[i].style.background = "yellow";
} else {
trs[i].style.background = "olive";
}
}
}
window.onload = color;
</script>

全部代码:
复制代码 代码如下:

<html>
<head>
<title>双色表格</title>
<style type="text/css">
<!--
table {
border:solid 1px black;
text-align:center;
border-spacing:0px;
}
th,td {
border:solid 1px black;
width:100px;
}
-->
</style>
<script type="text/javascript" >
function color() {
//把表头设为紫色
var th = document.getElementById("th");
th.style.background = "violet"
//1.得到所有<tr>元素
var trs = document.getElementsByTagName("tr");
var i;
for(i = 1; i <trs.length; i++) {
//2.改变<tr>元素的背景颜色
if(i % 2 == 0) {
trs[i].style.background = "yellow";
} else {
trs[i].style.background = "olive";
}
}
}
window.onload = color;
</script>
</head>
<body>
<center>
<table>
<tr id="th">
<th>姓名</th>
<th>科目</th>
<th>成绩</th>
</tr>
<tr>
<td>张三</td>
<td>语文</td>
<td>90</td>
</tr>
<tr>
<td>张三</td>
<td>数学</td>
<td>87</td>
</tr>
<tr>
<td>李四</td>
<td>数学</td>
<td>68</td>
</tr>
<tr>
<td>王五</td>
<td>英语</td>
<td>76</td>
</tr>
</table>
</center>
</body>
</html>