JavaScript實(shí)現(xiàn)的斑馬線表格效果【隔行變色】
本文實(shí)例講述了JavaScript實(shí)現(xiàn)的斑馬線表格效果。分享給大家供大家參考,具體如下:
雖然現(xiàn)在有很多框架可以輕松的實(shí)現(xiàn)斑馬線效果,而且兼容性也很不錯(cuò),比如bootstrap,但是不可否認(rèn)的是使用JavaScript實(shí)現(xiàn)的是兼容性最強(qiáng)的(瀏覽器不支持或禁止JavaScript腳本除外),所以今天使用原生JS實(shí)現(xiàn)了一個(gè)斑馬線效果的表格,大家可以簡(jiǎn)單看一下,如果有需要可以留做腳本積累。
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++){
/*判斷是否為奇數(shù)行
* 將第一行設(shè)置成true
* */
var odd = true;
var tr = table[i].getElementsByTagName("tr");
/*遍歷表格中的每一行*/
for(var j=0;j<tr.length;j++){
if(odd){
addClass(tr[j],"stripe");
/*將下一行設(shè)置稱false*/
odd = false;
}else{
/*將下一行設(shè)置稱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>
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript表格(table)操作技巧大全》、《JavaScript操作DOM技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》及《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
- JS控制表格隔行變色
- 原生JS操作網(wǎng)頁(yè)給p元素添加onclick事件及表格隔行變色
- javascript實(shí)現(xiàn)table表格隔行變色的方法
- 高效的表格行背景隔行變色及選定高亮的JS代碼
- javascript表格隔行變色加鼠標(biāo)移入移出及點(diǎn)擊效果的方法
- 純css+js寫的一個(gè)簡(jiǎn)單的tab標(biāo)簽頁(yè)帶樣式
- 最簡(jiǎn)單純JavaScript實(shí)現(xiàn)Tab標(biāo)簽頁(yè)切換的方式(推薦)
- js與jquery分別實(shí)現(xiàn)tab標(biāo)簽頁(yè)功能的方法
- js封裝tab標(biāo)簽頁(yè)實(shí)例分享
- JavaScript實(shí)現(xiàn)的原生態(tài)Tab標(biāo)簽頁(yè)功能【兼容IE6】
- JavaScript表格隔行變色和Tab標(biāo)簽頁(yè)特效示例【附j(luò)Query版】
相關(guān)文章
JAVASCRIPT style 中visibility和display之間的區(qū)別
visibility屬性用來(lái)確定元素是顯示還是隱藏的,這用visibility="visible|hidden"來(lái)表示(visible表示顯示,hidden表示隱藏)。2010-01-01
淺談javascript:兩種注釋,聲明變量,定義函數(shù)
下面小編就為大家?guī)?lái)一篇淺談javascript:兩種注釋,聲明變量,定義函數(shù)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-10-10
open 動(dòng)態(tài)修改img的onclick事件示例代碼
動(dòng)態(tài)修改img的onclick事件,使用open也可輕松做到,下面有個(gè)不錯(cuò)的示例,需要的朋友可以參考下2013-11-11
js實(shí)現(xiàn)簡(jiǎn)單選項(xiàng)卡制作
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)簡(jiǎn)單選項(xiàng)卡制作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-08-08
js獲取iframe中的window對(duì)象的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇JS獲得iframe中的window對(duì)象的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-05-05

