本文實例講述了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程序設計有所幫助。
新聞熱點
疑難解答