JavaScript-实例(表格行颜色间隔显示并高亮)

 

需求:实现表格的行颜色间隔显示,如图所示:



当鼠标在某一行时,实现高亮显示,移走则恢复。



实现:

步骤一:绘制表格。

<body>
<table>
	<tr>
		<th>姓名</th>
		<th>年龄</th>
		<th>地址</th>
	</tr>
	<tr >
		<td>张三</td>
		<td>30</td>
		<td>北京</td>
	</tr>
	
	<tr>
		<td>李四</td>
		<td>4</td>
		<td>上海</td>
	</tr>
	
	
	<tr>
		<td>王武</td>
		<td>23</td>
		<td>广州</td>
	</tr>
	
	<tr>
		<td>赵六</td>
		<td>27</td>
		<td>南京</td>
	</tr>
	
	<tr>
		<td>周七</td>
		<td>25</td>
		<td>大连</td>
	</tr>
	
	<tr>
		<td>孙八</td>
		<td>29</td>
		<td>铁岭</td>
	</tr>
	
	
</table>
</body>

步骤二:定义表格样式

将表格样式文件封装到tab.CSS文件中。

则需通过link进行连接。

<linkrel="stylesheet" href="tab.css" />


@charset "utf-8";
/* CSS Document */


table{
	border:#CC0033 1px solid;
	width:60%;
	}
table th{
border:#00FF00 1px solid;
background-color:#FF6699;}
table td{
border:#33FFCC 1px solid;
}

 

步骤三:定义表格行显示样式

<strong> <style type="text/css">

.one{
	background-color:#00FFCC;
	}
.two{
	background-color:#CC3333;
	}
.over{
	background-color:#33FF00;
	}
</style>
</strong>

步骤四:定义方法:


<script type="text/javascript">
 
var name;//这个变量用于将进行高亮显示之前的颜色给记录下来。
function trcolor()
{
 	var tabNode = document.getElementsByTagName("table")[0];//得到table对象
	var trs=tabNode.rows;//得到所有的行对象
	for(var x=1;x<trs.length;x++)
	{
		//实现行颜色间隔显示效果。
		if(x%2==1)  //奇数行,颜色为one这个选择器
			trs[x].className ="one";
		else
			trs[x].className="two";
		//实现高亮显示效果。
		trs[x].onmouseover =function() //onmoouseover是每个行对象的事件属性,动态的添加事件属性 
		{
			name=this.className;   //临时记录高亮之前的颜色
			this.className ="over";
		};
		trs[x].onmouseout =function ()  
		{
			this.className = name;
			
		}
			
	}
	

}



/*function over(trNode)
{
	trNode.className ="over";
	

}
function out(trNode)
{
	trNode.className =name;<p></p><pre name="code" class="html">onmoouseover
这种方法有局限性,如果行比较多,都需要在每一行中加入onmoouseover属性,不采用
}*/
window.onload =trcolor;</script>
 

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值