我有点困惑什么好处.each()有

时间:2017-01-31 07:54:40

标签: javascript jquery

我确定这是一个新手问题,但我不明白.each()对普通$()选择器有什么好处。 $()选择选择器的所有实例,并将应用于选择器的内容应用于其所有匹配实例。我的直接反应是:好.each()允许更复杂的事情,但你可以用jquery方法链,所以我也可以使用普通选择器做更复杂的事情。例如,如果我有5个p元素,我写道:

 $("p").css("color","blue");//this would be applied to all five p elements

 $("p").each(function(){$(this).css("color","blue")});//this does the
                                                      //same thing

我确定.each()有用,我目前无法看到它,正常选择器似乎已经遍历了所有内容。有人可以举例说明我为什么要使用.each()吗?

1 个答案:

答案 0 :(得分:5)

这是一个基于它的data-color属性设置每个元素颜色的示例。

$("p").each(function(){$(this).css("color", $(this).data("color"))});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p data-color="red">Red</p>
<p data-color="green">Green</p>
<p data-color="blue">Blue</p>

基本上,$.each()将允许您调用可以访问相关元素的函数。这反过来允许您根据所述元素的某些属性或属性调用功能。