JavaScript 实现表格隔行变色

  版权声明:未经授权,严禁分享!  

构建界面

界面HTML代码

<style>
#data,th,td{
border: 1px solid #aaaaaa;
/*合并边框线*/
border-collapse: collapse;
}
#data{
width: 600px;
}
#data th{
background: aquamarine;
color: white;
}
</style> <table id="data">
<thead>
<tr>
<th>姓名</th>
<th>工资</th>
<th>入职时间</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr>
<td>Tom</td>
<td>$3500</td>
<td>2015-8-20</td>
<td><button type="button">删除</button></td>
</tr>
<tr>
<td>Jack</td>
<td>$3200</td>
<td>2017-12-6</td>
<td><button type="button">删除</button></td>
</tr>
<tr>
<td>Jayvee</td>
<td>$6500</td>
<td>2012-6-12</td>
<td><button type="button">删除</button></td>
</tr>
<tr>
<td>Smith</td>
<td>$6300</td>
<td>2006-6-27</td>
<td><button type="button">删除</button></td>
</tr>
<tr>
<td>Mary</td>
<td>$1230</td>
<td>2018-3-2</td>
<td><button type="button">删除</button></td>
</tr>
<tr>
<td>Tom</td>
<td>$4200</td>
<td>2005-8-20</td>
<td><button type="button">删除</button></td>
</tr>
<tr>
<td>Tom</td>
<td>$3600</td>
<td>2015-9-8</td>
<td><button type="button">删除</button></td>
</tr>
</tbody>
</table>

  

使用 HTML 方式查找元素

首先在 HTML 界面添加样式

.blue{
background: bisque;
}

编写JavaScript脚本文件

// 查找所有的行,各行变色 假如偶数行变色
// 查找 tbody 中所有的 tr,然后隔行变色。
// 使用 HTML方式查找元素。 var table = document.getElementById("data");
var tbody = table.getElementsByTagName("tbody")[0];
var tr = tbody.getElementsByTagName("tr");
for (var i = 0, len = tr.length; i < len; i++) {
if (i % 2 == 1) {
tr[i].className="blue";
}
}

  

使用选择器查找

// 使用选择器查找
var trs = document.querySelectorAll("#data tbody tr:nth-child(2n)")
for (var i = 0; i < trs.length; i++) {
trs[i].className = "blue"
}

案例完整代码

HTML

<style>
#data,th,td{
border: 1px solid #aaaaaa;
/*合并边框线*/
border-collapse: collapse;
}
#data{
width: 600px;
}
#data th{
background: aquamarine;
color: white;
} .blue{
background: bisque;
} /*css方式隔行变色*/
/*#data tbody tr:nth-child(even){*/
/*background: bisque;*/
/*}*/ /*#data tbody tr:nth-child(2n){*/
/*background: bisque;*/
/*}*/ </style> <table id="data">
<thead>
<tr>
<th>姓名</th>
<th>工资</th>
<th>入职时间</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr>
<td>Tom</td>
<td>$3500</td>
<td>2015-8-20</td>
<td><button type="button">删除</button></td>
</tr>
<tr>
<td>Jack</td>
<td>$3200</td>
<td>2017-12-6</td>
<td><button type="button">删除</button></td>
</tr>
<tr>
<td>Jayvee</td>
<td>$6500</td>
<td>2012-6-12</td>
<td><button type="button">删除</button></td>
</tr>
<tr>
<td>Smith</td>
<td>$6300</td>
<td>2006-6-27</td>
<td><button type="button">删除</button></td>
</tr>
<tr>
<td>Mary</td>
<td>$1230</td>
<td>2018-3-2</td>
<td><button type="button">删除</button></td>
</tr>
<tr>
<td>Tom</td>
<td>$4200</td>
<td>2005-8-20</td>
<td><button type="button">删除</button></td>
</tr>
<tr>
<td>Tom</td>
<td>$3600</td>
<td>2015-9-8</td>
<td><button type="button">删除</button></td>
</tr>
</tbody>
</table> <script src="mJS.js"></script>

JavaScript

// // 查找所有的行,各行变色 假如偶数行变色
// // 查找 tbody 中所有的 tr,然后隔行变色。
// // 使用 HTML方式查找元素。
//
// var table = document.getElementById("data");
// var tbody = table.getElementsByTagName("tbody")[0];
// var tr = tbody.getElementsByTagName("tr");
// for (var i = 0, len = tr.length; i < len; i++) {
// if (i % 2 == 1) {
// tr[i].className="blue";
// }
// } // 使用选择器查找
var trs = document.querySelectorAll("#data tbody tr:nth-child(2n)")
for (var i = 0; i < trs.length; i++) {
trs[i].className = "blue"
}

效果图

  

JavaScript 实现表格隔行变色的更多相关文章

  1. Javascript操作表格隔行变色

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  2. JavaScript实例---表格隔行变色以及移入鼠标高亮

    <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title> ...

  3. JavaScript for循环实现表格隔行变色

    本代码主要演示的是for循环, <!doctype html> <html lang="en"> <head> <meta charset ...

  4. jquery插件之表格隔行变色并鼠标滑过高亮显示

    该插件乃本博客作者所写,目的在于提升作者的js能力,也给一些js菜鸟在使用插件时提供一些便利,老鸟就悠然地飞过吧. 此插件旨在实现表格隔行变色,且鼠标移动在表格的某一行上时,该行能高亮显示.整体代码如 ...

  5. 用JQuery实现表格隔行变色和突出显示当前行

    用JQuery实现表格隔行变色和突出显示当前行 上源码 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "htt ...

  6. 表格隔行变色_CSS实现鼠标悬停高亮

    <!doctype html> <html> <head> <meta http-equiv="content-type" content ...

  7. 表格隔行变色_jQuery控制实现鼠标悬停高亮

    <!doctype html> <html> <head> <meta http-equiv="content-type" content ...

  8. 案例(拖拽对话框、高清放大镜、自制滚动条、元素的隐藏方式、表格隔行变色、tab切换效果、字符串拼接、刷新评论)

    一.拖拽对话框 <style> .of{ width: 500px; } #link,#close{ text-decoration: none; margin: 0 10px; font ...

  9. jquery实现html表格隔行变色

    效果图 实现代码: 通过css控制样式,利用jquery的addClass方法实现 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Trans ...

随机推荐

  1. codeforces 888A/B/C/D/E - [数学题の小合集]

    这次CF不是很难,我这种弱鸡都能在半个小时内连A四道……不过E题没想到还有这种折半+状压枚举+二分的骚操作,后面就挂G了…… A.Local Extrema 题目链接:https://cn.vjudg ...

  2. Linux下搭建hadoop开发环境-超详细

    先决条件:开发机器需要联网 已安装java 已安装Desktop组 1.上传安装软件到linux上: 2.安装maven,用于管理项目依赖包:以hadoop用户安装apache-maven-3.0.5 ...

  3. Minimalist GNU for Windows

    MinGW | Minimalist GNU for Windows http://www.mingw.org/ MinGW, a contraction of "Minimalist GN ...

  4. TCP 123=网络时间协议(NTP),Net Controller

    TCP 123=网络时间协议(NTP),Net Controller

  5. the command line tools

    PhpStorm 10.0.2 http://stackoverflow.com/questions/22572861/error-cant-use-subversion-command-line-c ...

  6. LoadRunner-迭代和并发设置

    迭代:指运行一次脚本时某段代码块(action)循环执行的次数,串行执行 并发:指同时运行脚本的次数,并行执行(多个用户同时跑) 以下是用例和对应的相关设置 Iterations是在Vuser Gen ...

  7. BZOJ4614 UVA1742 Oil 计算几何+搜索+扫描线

    正解:计算几何+搜索+扫描线 解题报告: 传送门 哇我是真的觉得这题很妙了!各个方面都很妙啊... 首先有一个很重要的结论:最优线一定可以通过各种变换(旋转/平移)使得经过一条线段的左端点(...并不 ...

  8. JS模块化编程(二)

    背景 我们常在页面引用js遇到下面情况 <script src="1.js"></script> <script src="2.js&quo ...

  9. Python之Pandas使用教程(转)

    https://blog.csdn.net/XiaoYi_Eric/article/details/79506660

  10. 网站用sqlite库,报attempt to write a readonly database,解决方法

    将sqlite数据库文件,设置为users完全控制.重启网站即可!