jQuery找到的每个元素的运行代码

| 我有一个列表,并且正在使用jQuery获取列表中的每个LI:
$(\'ul li\')
我如何获得它,以便在找到每个元素之后运行代码,而不是事件;像这样:
$(\'ul li\').code(function() {
    alert(\'this will alert for every li found.\');
});
对我来说最好的方法是什么?     
已邀请:
        jQuery中有两种循环类型:显式和隐式。 显式循环 显式循环是您显式调用的循环。如果您有一个循环的值数组,则可以使用
$.each()
方法:
$.each( [ \'#a\', \'#b\', \'#c\' ], function( index, value ) {
  $( value ).css(\"color\", \"red\");
});
然后,jQuery将循环遍历数组中的每个值,然后再运行一个匿名函数。它将向该函数传递两个值:它所触摸的值的当前索引以及该值本身。因此,如果我们是第一次运行,索引将为0,值将为\'#a \'。 因此,如果我们从以下内容开始:
<p id=\"a\">A</p>
<p id=\"b\">B</p>
<p id=\"c\">C</p>
运行我们的显式循环后,我们的结果将是:
<p id=\"a\" style=\"color:red\">A</p>
<p id=\"b\" style=\"color:red\">B</p>
<p id=\"c\" style=\"color:red\">C</p>
当然,使用
$.empty()
方法时,您不仅限于数组和其他手工制作的集合。您也可以直接在选择器上链接此方法(注意,从技术上讲,这是另一种
$.each()
方法):
$(\"ul li\").each(function( index ){
  $(this).css(\"color\", \"red\");
});
此方法专门用于循环遍历jQuery对象。每次迭代都会在您的匿名函数中将当前元素显示为“ 9”。因此,回顾前面的示例,我们可以执行以下操作:
$(\"#a, #b, #c\").each(function( index ){
  $(this).css(\"color\", \"red\");
});
因此,对于每个匹配的元素,我们将执行匿名函数。 jQuery将为我们传递一个索引,以便我们可以通过匹配的元素跟踪进度。在第一个遍历中,
index
将为0,
this
将指
#a
。在第二次通过时,索引将为1,并且ѭ9将表示ѭ15。 尽管显式循环很诱人,但请注意,它们可能会增加应用程序不必要的开销。当jQuery具有多个匹配的元素时,它已经自行执行了循环。该循环称为隐式循环,有时我们可以使用它来满足我们的需求,同时提高性能。 隐式循环 隐式循环是在jQuery本身内自动完成的,例如使用您的代码:
$(\"ul li\").css(\"color\", \"red\");
jQuery对所有匹配的
li
元素执行循环,并将其颜色设置为\“ red \”。我们不必专门要求循环-它只是隐式地执行一个循环。但是,假设\“ red \”太简单了,我们想分别与每个项目进行交互-我们可以通过传入一个函数作为第二个参数来做到这一点:
$(\"ul li\").css(\"color\", function( index, value ){
  alert( \"We\'re inside LI number \" + index );
  return this.innerHTML;
});
jQuery将向我们的函数传递两个参数:当前元素的索引,以及该元素上颜色的当前rgb值。您可以将其中之一用于内部逻辑-我只是返回ѭ17的ѭ19。我们返回的值将成为此元素上
color
的新值。 因此,如果我们的无序列表如下所示:
<ul>
  <li>Red</li>
  <li>Green</li>
  <li>Blue</li>
</ul>
jQuery的隐式循环完成后,第一个
li
将是红色,第二个将是绿色,最后一个将是蓝色。
<ul>
  <li style=\"color:Red\">Red</li>
  <li style=\"color:Green\">Green</li>
  <li style=\"color:Blue\">Blue</li>
</ul>
您可以在http://jsbin.com/egihun/2/edit上在线查看 根据您要调用的方法,不同的参数将传递给您的函数。确保研究文档以了解在这些隐式循环中可以使用哪些信息。     
        
$(\'ul li\').each(function() {
    alert(\'this will alert for every li found.\');
});
    

要回复问题请先登录注册