JavaScript當前tr行高亮效果

antzone發表於2018-07-08

本章節分享一段程式碼例項,它實現了當前tr行高亮效果。

程式碼例項如下:

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<script type="text/javascript">
function IniEvent() {
  var tbl = document.getElementById("tblMain");
  var trs = tbl.getElementsByTagName("tr");
  for (var index=0;index<trs.length;index++){
    trs[index].onclick=TrOnClick;
  }
}
function TrOnClick(){
  var tbl=document.getElementById("tblMain");
  var trs=tbl.getElementsByTagName("tr");
  for (var index=0;index<trs.length;index++){
    if(trs[index]==this){
      trs[index].style.background="yellow";
    }
    else{
      trs[index].style.background="white";
    }
  }
}
window.onload=function(){
  IniEvent();
}
</script>
</head>
<body>
<table id="tblMain" border="1">
<tr>
  <td>1</td>
  <td>螞蟻部落一</td>
  <td>css教程</td>
</tr>
<tr>
  <td>2</td>
  <td>螞蟻部落二</td>
  <td>div教程</td>
</tr>
<tr>
  <td>3</td>
  <td>螞蟻部落三</td>
  <td>jquery教程</td>
</tr>
<tr>
  <td>4</td>
  <td>螞蟻部落四</td>
  <td>softwhy.com</td>
</tr>
</table>
</body>
</html>

上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。

一.程式碼註釋:

(1).function IniEvent(){},此函式可以進行一些初始化工作。

(2).var tbl = document.getElementById("tblMain"),獲取table表格物件。

(3).var trs = tbl.getElementsByTagName("tr"),獲取tr元素集合。

(4).for (var index=0;index<trs.length;index++){

  trs[index].onclick=TrOnClick;

},遍歷每一個tr行,並且為它們註冊onclick事件處理函式。

(5).function TrOnClick(){},事件處理函式。

(6).var tbl=document.getElementById("tblMain"),獲取table元素物件。

(7).var trs=tbl.getElementsByTagName("tr"),獲取tr元素物件集合。

(8).for (var index=0;index<trs.length;index++){

  if(trs[index]==this){

    trs[index].style.background="yellow";

  }

  else{

    trs[index].style.background="white";

  }

}遍歷每一個行,將當前行背景顏色設定為黃色。

其他行的顏色設定白色。

二.相關閱讀:

(1).getElementsByTagName()參閱document.getElementsByTagName()一章節。

(2).for迴圈參閱javascript for一章節。

相關文章