JavaScript實現的斑馬線表格效果【隔行變色】
本文實例講述了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 style 中visibility和display之間的區(qū)別
visibility屬性用來確定元素是顯示還是隱藏的,這用visibility="visible|hidden"來表示(visible表示顯示,hidden表示隱藏)。2010-01-01
open 動態(tài)修改img的onclick事件示例代碼
動態(tài)修改img的onclick事件,使用open也可輕松做到,下面有個不錯的示例,需要的朋友可以參考下2013-11-11

