鼠标动态改变表格样式
当鼠标移动到某行表格时,改行颜色改变,当鼠标移开后颜色恢复,当鼠标点击后颜色加深,移开后依旧加深,当鼠标再次单击其他行时,被点击的行颜色改变,原来被点击的行颜色恢复。效果如下图所示。
实现代码如下:
------------------------------------
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>table</TITLE>
<STYLE>
table
{
border-top:1px solid black;
border-left:1px solid black;
cursor:default;
}
td
{
border-bottom:1px solid black;
border-right:1px solid black;
height:23px;
}
</STYLE>
<SCRIPT language="javascript">
function change()
{
var oObj = event.srcElement;
if(oObj.tagName.toLowerCase() == "td")
{
var oTr = oObj.parentNode;
for(var i=1; i<document.all.table1.rows.length; i++)
{
document.all.table1.rows[i].style.backgroundColor = "";
document.all.table1.rows[i].tag = false;
}
oTr.style.backgroundColor = "#4169E1";
oTr.tag = true;
}
}
function out()
{
var oObj = event.srcElement;
if(oObj.tagName.toLowerCase() == "td")
{
var oTr = oObj.parentNode;
if(!oTr.tag)
oTr.style.backgroundColor = "";
}
}
function over()
{
var oObj = event.srcElement;
if(oObj.tagName.toLowerCase() == "td")
{
var oTr = oObj.parentNode;
if(!oTr.tag)
oTr.style.backgroundColor = "#B0E2FF";
}
}
</SCRIPT>
</HEAD>
<BODY>
<TABLE id="table1" width="50%" border="0" cellpadding="0" cellspacing="0">
<TR style="background-color:#999999; border-bottom:2px solid black; height:25px" align="center">
<TD width="25%">one</TD>
<TD width="25%">two</TD>
<TD width="25%">three</TD>
<TD width="25%">four</TD>
</TR>
<TR onMouseOver="over()" onClick="change()" onMouseOut="out()">
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR onMouseOver="over()" onClick="change()" onMouseOut="out()">
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR onMouseOver="over()" onClick="change()" onMouseOut="out()">
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR onMouseOver="over()" onClick="change()" onMouseOut="out()">
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR onMouseOver="over()" onClick="change()" onMouseOut="out()">
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR onMouseOver="over()" onClick="change()" onMouseOut="out()">
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR onMouseOver="over()" onClick="change()" onMouseOut="out()">
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
</TABLE>
</BODY>
</HTML>