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. Git 使用篇二:搭建远程服务器

    一般做一个私人的项目,不希望开源的,是不会放在GitHub上的,这个时候我们需要建里一个自己的Git远程服务器,方便小组成员开发. 这里以Centos云服务器为例: 第一步 如果自己的服务器没有git ...

  2. ubuntu下绝对路径和相对路径的问题

     绝对路径与相对路径 除了需要特别注意的FHS目录配置外,在文件名部分我们也要特别注意.因为根据档名写法的不同,也可将所谓的路径(path)定义为绝对路径(absolute)与相对路径(relativ ...

  3. 51nod 1126 - 求递推序列的第N项 - [找规律]

    题目链接:https://cn.vjudge.net/problem/51Nod-1126 有一个序列是这样定义的:f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + ...

  4. Copying and Cloning Objects

    PHP Advanced and Object-OrientedProgrammingVisual Quickpro GuideLarry Ullman class someClass { publi ...

  5. c# listView中列宽随列中的内容自动调整

    1.创建一个类 ListViewAutoChange  作用:自动调整ListView的列宽 代码如下:(内容很容易理解,没加注释) using System; using System.Collec ...

  6. sql两列相除,保留n位小数

    ), ) from tablename 以上代码意思两列相处,然后保留4位小数.

  7. [django]celery_redis探索

    celery+redis能做什么及简单原理 能干嘛: 看这里http://yshblog.com/blog/163 https://segmentfault.com/a/119000001565487 ...

  8. [LeetCode] 243. Shortest Word Distance_Easy

    Given a list of words and two words word1 and word2, return the shortest distance between these two ...

  9. MYSQL主从不同步延迟原理分析及解决方案(摘自http://www.jb51.net/article/41545.htm)

    1. MySQL数据库主从同步延迟原理.要说延时原理,得从mysql的数据库主从复制原理说起,mysql的主从复制都是单线程的操作,主 库对所有DDL和DML产生binlog,binlog是顺序写,所 ...

  10. 读书--编写高质量代码 改善C#程序的157个建议

    最近读了陆敏技写的一本书<<编写高质量代码  改善C#程序的157个建议>>书写的很好.我还看了他的博客http://www.cnblogs.com/luminji . 前面部 ...