JavaScript 表格隔行變色效果
本章節分享一段程式碼例項,它實現了table表格行隔行變色效果。
並且滑鼠懸浮和點選行的時候能夠使當前行高亮顯示。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> table{border-collapse:collapse} table td{ height:26px; font-size:12px; color:#333; border:1px solid #09c; text-align:center; padding:0 10px; } </style> </head> <body> <script> window.onload = function(){ var tables = document.getElementById("tables"); var tables_li = tables.getElementsByTagName("tr"); var index=0; var len = tables_li.length; for(index=0; index<len; index++){ tables_li[index].onoff = 1; tables_li[index].index = index; tables_li[index].style.backgroundColor = index%2?"#ace":""; tables_li[index].onmouseover = function(){ if(this.onoff == 1){ this.style.backgroundColor = "#06c"; } } tables_li[index].onmouseout = function(){ if(this.onoff == 1){ this.style.backgroundColor = this.index%2?"#ace":""; } } tables_li[index].onclick = function(){ if(this.onoff == 1){ this.onoff = 0; this.style.backgroundColor = "#069"; } else{ this.onoff = 1; this.style.backgroundColor = this.index%2?"#ace":""; } } } } </script> <table width="500" border="0" align="center" cellpadding="0" cellspacing="0" id="tables"> <tr> <td>1</td> <td>螞蟻部落歡迎您</td> </tr> <tr> <td>2</td> <td>只有努力奮鬥才會有美好的未來</td> </tr> <tr> <td>3</td> <td>沒有任何人一開始就是高手,必須要努力學習</td> </tr> <tr> <td>4</td> <td>每一天都是新的,不要抱怨去好好的享受</td> </tr> <tr> <td>5</td> <td>div css教程是非常簡單基礎的,沒有任何難度</td> </tr> <tr> <td>6</td> <td>HTML5的良好掌握必須要以javascript為基礎</td> </tr> <tr> <td>7</td> <td>正規表示式真是一門藝術的語言</td> </tr> <tr> <td>8</td> <td>螞蟻部落的url是softwhy.com</td> </tr> <tr> <td>9</td> <td>把握好當前的時間,下一秒都是虛幻的</td> </tr> <tr> <td>10</td> <td>祝大家都能夠有良好的成就</td> </tr> </table> </body> </html>
上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。
一.程式碼註釋:
(1).window.onload = function(){},當文件內容完全載入完畢再去執行函式中的程式碼。
(2).var tables = document.getElementById("tables"),獲取id屬性值為tables的物件。
(3).var tables_li = tables.getElementsByTagName("tr"),獲取table中的tr元素集合。
(4).var index=0,宣告一個變數並且賦初值為0,用來作為索引。
(5).var len = tables_li.length,獲取表格行的數量。
(6).for(index=0; index<len; index++){},遍歷每一個tr行元素。
(7).tables_li[index].onoff = 1,為當前tr元素新增一個onoff屬性,並賦初值為1。
(8).tables_li[index].index = index,為當前tr元素新增一個index屬性,並賦值為當前索引。
(9).tables_li[index].style.backgroundColor = index%2?"#ace":"",根據奇偶行來設定背景顏色。
(10).tables_li[index].onmouseover = function(){
if(this.onoff == 1){
this.style.backgroundColor = "#06c";
}
}為tr註冊mouseover事件處理函式,如果元素的onoff屬性值等於1,那麼就更改背景色。
(11).tables_li[index].onmouseout = function(){
if(this.onoff == 1){
this.style.backgroundColor = this.index%2?"#ace":"";
}
},當屬性值為1,那麼就還原背景顏色。
(12).tables_li[index].onclick = function(){
if(this.onoff == 1){
this.onoff = 0;
this.style.backgroundColor = "#069";
}
else{
this.onoff = 1;
this.style.backgroundColor = this.index%2?"#ace":"";
}
},為行註冊click事件處理函式。
當點選的時候,如果行的onoff屬性值為1,那麼就將其設定為0,然後設定背景色,這個時候就相當於當前航背景色鎖定了,滑鼠懸浮或者離開都不會改變背景色。
當再次點選的時候,onoff屬性值設定為1,然後將背景色還原。
二.相關閱讀:
(1).getElementsByTagName()參閱document.getElementsByTagName()一章節。
(2).onmouseover事件參閱JavaScript mouseover 事件一章節。
(3).onmouseout事件參閱JavaScript mouseout 事件一章節。
(4).三元運算子參閱三元運算子一章節。
相關文章
- jQuery表格隔行變色效果詳解jQuery
- CSS 表格隔行變色CSS
- CSS表格隔行變色詳解CSS
- jQuery外掛--表格隔行變色jQuery
- 頁面表格怎麼實現隔行異色、隔行變色
- Excel表格如何隔行填充顏色?Excel表格底色隔行填充方法教程Excel
- JavaScript文字迴圈變色效果JavaScript
- jQuery table表格隔行換色程式碼例項jQuery
- CSS 隔行變色程式碼例項CSS
- 填報表實現隔行異色的效果
- JavaScript 點選表格行實現背景變色JavaScript
- 前端--實現隔行變色的兩種方式前端
- 純css之隔行換色CSS
- JavaScript表格tr行左右拖動效果JavaScript
- 使用WPS PPT設定隔行變色的具體操作方法
- 點選連結背景變色效果
- JavaScript 方向鍵切換表格tr行高亮效果JavaScript
- CSS滑鼠懸浮行背景變色效果CSS
- PbootCMS奇偶數判斷(隔行變色)各種條件判斷和標籤boot
- JavaScript透明度漸變效果JavaScript
- JavaScript實用的表格行滑鼠點選高亮效果JavaScript
- excel重複項篩選標色 excel表格重複項變色Excel
- CSS3文字顏色漸變效果CSSS3
- 滑鼠懸浮導航欄背景和字型變色效果
- 直播原始碼,懸浮窗滾動漸變色效果原始碼
- JavaScript單擊變色再次點選還原JavaScript
- CSS 細線表格效果CSS
- CSS細線表格效果CSS
- excel怎麼批量間隔插行 excel表格如何隔行插行Excel
- excel怎麼批次間隔插行 excel表格如何隔行插行Excel
- JavaScript拖拽效果JavaScript
- JavaScript表格排序詳解JavaScript排序
- JavaScript動態建立表格和增加表格的行JavaScript
- excel填充顏色快捷鍵 表格快速填充顏色快捷鍵Excel
- Android仿IOS上拉下拉彈性效果,同時利用顏色漸變,設定上拉下拉背景顏色不一致效果AndroidiOS
- JavaScript 秒錶效果JavaScript
- JavaScript刪除table表格中行JavaScript
- JavaScript動態建立table表格JavaScript