定义:
each()方法,遍历元素,并为每个匹配元素规定运行的函数。
注意:返回 false 可用于及早停止循环。
实例一:
为每个box的第一个元素设置背景色
<div class="box">
<p></p>
<p></p>
<h1 class="active">haha</h1>
<p></p>
<p class="active"></p>
<h2>hehe</h2>
</div>
<div class="box">
<p></p>
<p></p>
<h1 class="active">haha</h1>
<p></p>
<p class="active"></p>
<h2>hehe</h2>
</div>
<script src="./jquery-1.12.1.min.js"></script>
<script>
// 对每个box的第一个儿子设置背景色为红色
以下做法只会设置第一个box的第一个资源使用的背景色,详解见上一篇关于eq()方法的介绍
//$(".box").children().eq(0).css("background","red");
// 正确的写法
$(".box").each(function() {
$(this).children().eq(0).css("background","red");
});
</script>
实例二:
表格隔列变色
<table border="1">
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>
<script src="./jquery-1.12.1.min.js"></script>
<script>
// 下边的写法odd将所有的td看作一个整体来排列,设置位置为奇数的td的元素背景色,tr中td的数量不确定,所以不能确保一定是隔列变色的效果。
//$("td:odd").css("background","pink");
// 用each()方法实现隔列变色
$("tr").each(function() {
$(this).children(":even").css("background","pink");
});
</script>