最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - jQuery Each() function not working - Stack Overflow

programmeradmin2浏览0评论

I'm trying to add a class to each div.banner inside of my #destaques, but isn't working. What's happening?

JS:

$(document).ready(function() {
  bannerRotator("#destaques");
});



function bannerRotator(element) {

  // Conta quantos banners existem:

  i = 0;

  $(element).find(".banner").each(function() {
    i++;
    $(this).addClass("test");
  });

  alert(i);

  //

}

HTML:

<div id="destaques">
<div class="banner"><img src="images/001.jpg"/></div>
<div class="banner"><img src="images/002.jpg"/></div>
<div class="banner"><img src="images/003.jpg"/></div>
</div>

I'm trying to add a class to each div.banner inside of my #destaques, but isn't working. What's happening?

JS:

$(document).ready(function() {
  bannerRotator("#destaques");
});



function bannerRotator(element) {

  // Conta quantos banners existem:

  i = 0;

  $(element).find(".banner").each(function() {
    i++;
    $(this).addClass("test");
  });

  alert(i);

  //

}

HTML:

<div id="destaques">
<div class="banner"><img src="images/001.jpg"/></div>
<div class="banner"><img src="images/002.jpg"/></div>
<div class="banner"><img src="images/003.jpg"/></div>
</div>
Share Improve this question edited Mar 22, 2011 at 18:58 Jakub Hampl 40.6k10 gold badges79 silver badges111 bronze badges asked Mar 22, 2011 at 18:54 Lucas VeigaLucas Veiga 1,7937 gold badges27 silver badges48 bronze badges 2
  • 1 var i = $('#destaques .banner').addClass('test').length, – Josiah Ruddell Commented Mar 22, 2011 at 18:57
  • Working for me. – Brad Christie Commented Mar 22, 2011 at 18:58
Add a ment  | 

2 Answers 2

Reset to default 6

addClass will work on a collection automatically.

$("#destaques").find(".banner").addClass("test");

Example on jsfiddle.

side note: this could be also be simplified to

$("#destaques .banner").addClass("test");

Try this

jQuery.each($("div.banner"), function() {
  i++;
  $(this).addClass("test");
});

But if you just want to add the class you can also do it in the following one liner

alert($('div.banner').addClass("test").length);
发布评论

评论列表(0)

  1. 暂无评论