本文實例講述了javascript上下方向鍵控制表格行選中並高亮顯示的方法。分享給大家供大家參考。具體實現方法如下:
<style>
tr.highlight {
background:#08246B;
color:white;
}
</style>
<table border="1" width="70%" id="ice">
<tr onClick="selectTR();return false;">
<td>123</td>
<td>234</td>
<td>abc</td>
<td>def</td>
</tr>
<tr onClick="selectTR();">
<td>123</td>
<td>234</td>
<td>abc</td>
<td>def</td>
</tr>
<tr onClick="selectTR();">
<td>123</td>
<td>234</td>
<td>abc</td>
<td>def</td>
</tr>
<tr onClick="selectTR();">
<td>123</td>
<td>234</td>
<td>abc</td>
<td>def</td>
</tr>
<tr onClick="selectTR();">
<td>123</td>
<td>234</td>
<td>abc</td>
<td>def</td>
</tr>
</table>
<script language="javascript">
<!--
var currentLine = -1;
document.onkeydown = function(e)
{
e = window.event || e;
switch(e.keyCode)
{
case 38:
currentLine--;
changeItem();
break;
case 40:
currentLine++;
changeItem();
break;
default:
break;
}
}
function selectTR()
{
currentLine=window.event.srcElement.parentElement.rowIndex;
//alert(currentLine);
changeItem();
}
//改變選擇項目
function changeItem()
{
if(document.all)
var it = document.getElementById("ice").children[0];
else
var it = document.getElementById("ice");
for(i=0;i<it.rows.length;i++)
{
it.rows[i].className = "";
}
if(currentLine < 0)
currentLine = it.rows.length - 1;
if(currentLine == it.rows.length)
currentLine = 0;
it.rows[currentLine].className = "highlight";
}
//-->
</script>
希望本文所述對大家的javascript程序設計有所幫助。