3

私はこのコードを持っています:

$(".feed-item .field-content p").each(function(i) {
    $(this).addClass("item" + (i+1));
});

このコードは、このマークアップ内の段落にクラスを追加するのに役立ちます:

<div class="feed-item">
  <div class="field-content">
    <p>This must be class item1</p>
    <p>This must be class item2</p>
  </div>
</div>
<div class="feed-item">
  <div class="field-content">
    <p>This must be class item1</p>
    <p>This must be class item2</p>
  </div>
</div>

しかし、私は常に番号1からカウントを開始する必要があります.私はよく説明しましたか? 今、私はこの結果を得ます:

<div class="feed-item">
  <div class="field-content">
    <p class="item1">This must be class item1</p>
    <p class="item2">This must be class item2</p>
  </div>
</div>
<div class="feed-item">
  <div class="field-content">
    <p class="item3">This must be class item1</p>
    <p class="item4">This must be class item2</p>
  </div>
</div>

そして、これが必要でした (違いは、2 番目の field-content div の p タグに関連付けられたクラスにあることに注意してください)。

<div class="feed-item">
  <div class="field-content">
    <p class="item1">This must be class item1</p>
    <p class="item2">This must be class item2</p>
  </div>
</div>
<div class="feed-item">
  <div class="field-content">
    <p class="item1">This must be class item1</p>
    <p class="item2">This must be class item2</p>
  </div>
</div>

私はこのリンクに取り組んでいます: http://jsfiddle.net/bosspetta/RJkP5/

4

1 に答える 1

5

関数をaddClassメソッドに渡すことができます。

$(".feed-item .field-content").each(function() {
    $('p', this).addClass(function(i){
       return "item" + ++i
    });
});

http://jsfiddle.net/wc4P3/

于 2012-12-31T18:41:32.427 に答える