用简洁的jQuery方法toggleClass实现隔行换色
今天用一种简洁的方法toggleClass()实现了隔行换色:代码如下:
<!DOCTYPEHTML>
<html>
<head>
<metacharset="utf-8">
<title>隔行换色</title>
<scriptsrc="js/jquery-1.4.2.min.js"></script>
<styletype="text/css">
body,table,td,{
font-family:Arial,Helvetica,sans-serif;
font-size:12px;
}
.h{
background:#f3f3f3;
color:#000;
}
.c{
background:#ebebeb;
color:#000;
}
</style>
</head>
<body>
<divid="aaa">
<form>
<tableid="table"width="50%"border="0"cellpadding="3"cellspacing="1">
<tr>
<tdwidth="30"align="center"><inputtype="checkbox"name="checkbox"class="check1"value="checkbox"/></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
<tr>
<tdalign="center"><inputtype="checkbox"name="checkbox"class="check1"value="checkbox"/></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
<tr>
<tdalign="center"><inputtype="checkbox"name="checkbox"class="check1"value="checkbox"/></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
<tr>
<tdalign="center"><inputtype="checkbox"name="checkbox"class="check1"value="checkbox"/></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
<tr>
<tdalign="center"><inputtype="checkbox"name="checkbox"class="check1"value="checkbox"/></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
<tr>
<tdalign="center"><inputtype="checkbox"name="checkbox"class="check1"value="checkbox"/></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
<tr>
<tdalign="center"><inputtype="checkbox"name="checkbox"class="check1"value="checkbox"/></td>
<td>蓝枫前端</td>
<td>蓝枫前端</td>
</tr>
</table>
</form>
</div>
<script>
第一种比较复杂的方法:
$(function()
{
$("#tabletr").hover(function()
{
$(this).addClass("h");
},function()
{
$(this).removeClass("h");
})
$("input").click(function()
{
if($(this).attr("checked"))
{
$(this).closest("tr").addClass("c");
}
else
{
$(this).closest("tr").removeClass("c");
}
})
})
第二种比较简单的方法:
toggleClass()对设置或移除被选元素的一个或多个类进行切换。
该方法检查每个元素中指定的类。如果不存在则添加类,如果已设置则删除之。这就是所谓的切换效果。
不过,通过使用"switch"参数,您能够规定只删除或只添加类。
$(function(){
$("#tabletr").hover(function(){
$(this).toggleClass("h");
})
$("input").click(function(){
vard=$(this);
d.closest('tr').toggleClass("c",d.attr("checked"));
})
})
</script>
</body>
</html>