JavaScript实现的斑马线表格效果【隔行变色】
发布时间 - 2026-01-11 03:18:07 点击率:次本文实例讲述了JavaScript实现的斑马线表格效果。分享给大家供大家参考,具体如下:

虽然现在有很多框架可以轻松的实现斑马线效果,而且兼容性也很不错,比如bootstrap,但是不可否认的是使用JavaScript实现的是兼容性最强的(浏览器不支持或禁止JavaScript脚本除外),所以今天使用原生JS实现了一个斑马线效果的表格,大家可以简单看一下,如果有需要可以留做脚本积累。
html表格部分:
<table>
<thead>
<tr>
<th>Date</th>
<th>City</th>
<th>Venue</th>
</tr>
</thead>
<tbody>
<tr>
<td>2017-06-25</td>
<td>
<abbr title="BeiJing">BJ</abbr>
</td>
<td>Ballroom</td>
</tr>
<tr>
<td>2017-08-02</td>
<td>
<abbr title="ShangHai">SH</abbr>
</td>
<td>Yoyoyo</td>
</tr>
<tr>
<td>2017-11-30</td>
<td>
<abbr title="HangZhou">HZ</abbr>
</td>
<td>NOW~</td>
</tr>
<tr>
<td>2017-11-30</td>
<td>
<abbr title="HangZhou">HZ</abbr>
</td>
<td>NOW~</td>
</tr>
<tr>
<td>2017-11-30</td>
<td>
<abbr title="ShiJiaZhuang">SJZ</abbr>
</td>
<td>NOW~</td>
</tr>
</tbody>
</table>
script.js
function addClass(element, value) {//element:需要添加新样式的元素,value:新的样式
if (!element.className) {
element.className = value;
} else {
newClassName = element.className;
newClassName += " ";
newClassName += value;
element.className = newClassName;
}
}
function stripeTable(){
if(!document.getElementsByTagName("table")) return false;
/*获取table*/
var table = document.getElementsByTagName("table");
/*遍历 为所有表格添加*/
for(var i=0;i<table.length;i++){
/*判断是否为奇数行
* 将第一行设置成true
* */
var odd = true;
var tr = table[i].getElementsByTagName("tr");
/*遍历表格中的每一行*/
for(var j=0;j<tr.length;j++){
if(odd){
addClass(tr[j],"stripe");
/*将下一行设置称false*/
odd = false;
}else{
/*将下一行设置称true*/
odd = true;
}
}
}
}
css部分:
* {
margin: 0;
padding: 0;
}
.stripe{
background-color: #eee;
}
完整index.html代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>javascript斑马线表格</title>
<style>
* {
margin: 0;
padding: 0;
}
.stripe{
background-color: #eee;
}
</style>
<script src="script.js"></script>
</head>
<body>
<table>
<thead>
<tr>
<th>Date</th>
<th>City</th>
<th>Venue</th>
</tr>
</thead>
<tbody>
<tr>
<td>2017-06-25</td>
<td>
<abbr title="BeiJing">BJ</abbr>
</td>
<td>Ballroom</td>
</tr>
<tr>
<td>2017-08-02</td>
<td>
<abbr title="ShangHai">SH</abbr>
</td>
<td>Yoyoyo</td>
</tr>
<tr>
<td>2017-11-30</td>
<td>
<abbr title="HangZhou">HZ</abbr>
</td>
<td>NOW~</td>
</tr>
<tr>
<td>2017-11-30</td>
<td>
<abbr title="HangZhou">HZ</abbr>
</td>
<td>NOW~</td>
</tr>
<tr>
<td>2017-11-30</td>
<td>
<abbr title="ShiJiaZhuang">SJZ</abbr>
</td>
<td>NOW~</td>
</tr>
</tbody>
</table>
<script>
stripeTable();
</script>
</body>
</html>
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript表格(table)操作技巧大全》、《JavaScript操作DOM技巧总结》、《JavaScript遍历算法与技巧总结》、《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript查找算法技巧总结》及《JavaScript错误与调试技巧总结》
希望本文所述对大家JavaScript程序设计有所帮助。
# JavaScript
# 斑马线
# 表格
# 隔行变色
# JS控制表格隔行变色
# 原生JS操作网页给p元素添加onclick事件及表格隔行变色
# javascript实现table表格隔行变色的方法
# 高效的表格行背景隔行变色及选定高亮的JS代码
# javascript表格隔行变色加鼠标移入移出及点击效果的方法
# 纯css+js写的一个简单的tab标签页带样式
# 最简单纯JavaScript实现Tab标签页切换的方式(推荐)
# js与jquery分别实现tab标签页功能的方法
# js封装tab标签页实例分享
# JavaScript实现的原生态Tab标签页功能【兼容IE6】
# JavaScript表格隔行变色和Tab标签页特效示例【附jQuery版】
# 遍历
# 的是
# 相关内容
# 有很多
# 感兴趣
# 数据结构
# 给大家
# 很不错
# 不支持
# 看一下
# 更多关于
# 所述
# 程序设计
# 设置成
# 判断是否
# 性也
# 实现了
# 操作技巧
# 讲述了
# Venue
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel如何实现文件上传和存储?(本地与S3配置)
大型企业网站制作流程,做网站需要注册公司吗?
电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?
Laravel如何自定义错误页面(404, 500)?(代码示例)
Win11怎么查看显卡温度 Win11任务管理器查看GPU温度【技巧】
网站制作大概要多少钱一个,做一个平台网站大概多少钱?
Laravel怎么做数据加密_Laravel内置Crypt门面的加密与解密功能
如何在万网自助建站中设置域名及备案?
Laravel Docker环境搭建教程_Laravel Sail使用指南
jQuery中的100个技巧汇总
微信h5制作网站有哪些,免费微信H5页面制作工具?
5种Android数据存储方式汇总
免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?
Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布
Laravel怎么实现支付功能_Laravel集成支付宝微信支付
如何登录建站主机?访问步骤全解析
千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】
Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验
Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全
Windows Hello人脸识别突然无法使用
手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?
php在windows下怎么调试_phpwindows环境调试操作说明【操作】
高端建站如何打造兼具美学与转化的品牌官网?
SQL查询语句优化的实用方法总结
手机软键盘弹出时影响布局的解决方法
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
Laravel如何编写单元测试和功能测试?(PHPUnit示例)
详解Oracle修改字段类型方法总结
Laravel中的Facade(门面)到底是什么原理
无锡营销型网站制作公司,无锡网选车牌流程?
如何使用 Go 正则表达式精准提取括号内首个纯字母标识符(忽略数字与嵌套)
Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置
Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中
Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】
Laravel如何生成URL和重定向?(路由助手函数)
如何快速使用云服务器搭建个人网站?
如何批量查询域名的建站时间记录?
简历没回改:利用AI润色让你的文字更专业
JavaScript实现Fly Bird小游戏
js实现获取鼠标当前的位置
laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法
怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?
悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音
如何快速启动建站代理加盟业务?
linux top下的 minerd 木马清除方法
Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】
Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧
网站制作报价单模板图片,小松挖机官方网站报价?
详解CentOS6.5 安装 MySQL5.1.71的方法
北京企业网站设计制作公司,北京铁路集团官方网站?

