zl程序教程

您现在的位置是:首页 >  后端

当前栏目

高效的表格行背景隔行变色及选定高亮的JS代码

JS代码 高效 表格 背景 高亮 变色 隔行
2023-06-13 09:14:25 时间
这段JS放在head中
复制代码代码如下:

//点击当前选中行的时候设置当前行的颜色,同时恢复除当前行外的行的颜色及鼠标事件
functionselectRow(target)
{
varsTable=document.getElementById("ServiceListTable")
for(vari=1;i<sTable.rows.length;i++)//遍历除第一行外的所有行
{
if(sTable.rows[i]!=target)//判断是否当前选定行
{
sTable.rows[i].bgColor="#ffffff";//设置背景色
sTable.rows[i].onmouseover=resumeRowOver;//增加onmouseover事件
sTable.rows[i].onmouseout=resumeRowOut;//增加onmouseout事件
}
else
{
sTable.rows[i].bgColor="#d3d3d3";
sTable.rows[i].onmouseover="";//去除鼠标事件
sTable.rows[i].onmouseout="";//去除鼠标事件
}
}
}
//移过时tr的背景色
functionrowOver(target)
{
target.bgColor="#e4e4e4";
}
//移出时tr的背景色
functionrowOut(target)
{
target.bgColor="#ffffff";
}
//恢复tr的的onmouseover事件配套调用函数
functionresumeRowOver()
{
rowOver(this);
}
//恢复tr的的onmouseout事件配套调用函数
functionresumeRowOut()
{
rowOut(this);
}

关于最后两个函数resumeRowOver和resumeRowOut为什么这样写参考我之前写的通过js给页面元素添加事件
  对应的表格HTML
复制代码代码如下:

<tablewidth="100%"border="0"cellspacing="0"cellpadding="0"id="ServiceListTable">
<tr>
<th>服务事项</th>
<th>N</th>
<th>状态</th>
<th>办结</th>
<th>资料</th>
</tr>
<tronmouseover="rowOver(this)"onmouseout="rowOut(this)"onclick="selectRow(this)">
<td>相关内容</td>
<tdalign="center"> </td>
<tdalign="center"> </td>
<tdalign="center"> </td>
<tdalign="center"> </td>
</tr>
<tronmouseover="rowOver(this)"onmouseout="rowOut(this)"onclick="selectRow(this)">
<td>相关内容</td>
<tdalign="center"> </td>
<tdalign="center"> </td>
<tdalign="center"> </td>
<tdalign="center"> </td>
</tr>
<tronmouseover="rowOver(this)"onmouseout="rowOut(this)"onclick="selectRow(this)">
<td>相关内容</td>
<tdalign="center"> </td>
<tdalign="center"> </td>
<tdalign="center"> </td>
<tdalign="center"> </td>
</tr>
<tronmouseover="rowOver(this)"onmouseout="rowOut(this)"onclick="selectRow(this)">
<td>相关内容</td>
<tdalign="center"> </td>
<tdalign="center"> </td>
<tdalign="center"> </td>
<tdalign="center"> </td>
</tr>
</table>