3

最初の子を除くすべての子にクラスを追加したいhtmlがあります。

    <div class="test">
        <div class="different">title</div>
        <div class="same">a</div>
        <div class="same">b</div>
        <div class="same">c</div>
    </div>

以下のjsで

<script>
$(".test").children().each(function(i) {
  $(this).addClass("eg_" + (i+1));
});
</script>

このフィドルを参照してください

http://jsfiddle.net/aaronk85/HaH2y/

最初の子を除くすべての子divにクラス「eg_」+(i + 1)を取得させたいのですが、これを機能させることができないようです。

私はいくつかの同様の例を見てきましたが、以下の例を参照してくださいが、これからはうまくいきません。ここでどこが間違っているのですか?

http://jsfiddle.net/aaronk85/y9bEG/11/

4

4 に答える 4

7

gtを使用してフィルタリングし、コールバックを使用して正確なクラスを設定します。

$('.test > div:gt(0)').addClass(function(i){
      return 'eg_'+(i+2);
});

(あなたが必要かどうかはあなたの質問では明確ではありませんii+1またはi+2

于 2012-10-17T10:27:34.990 に答える
2

インデックスをチェックしてみてください

<script>
$(".test").children().each(function(i) {

if(i!=0){ // check the first index and add 
   $(this).addClass("eg_" + (i+1));
  }
});
</script>
于 2012-10-17T10:28:48.410 に答える
0

これを試して:

$(".test").children().each(function(i) {
    if (i>0) {
        $(this).addClass("eg_" + (i));
    } else {
        i++;
    }
});

</ p>

于 2012-10-17T10:29:47.857 に答える
0
          ##  This code can help answer, and I completed my friends   
    ##





         <div id="list3">
               <ul class="NewFilm">
               <li>test1</li>
               <li>test2</li>
               <li>test3</li>
               <li>test4</li>
               <li>test5</li>
               </ul>
              </div> 
        <script>
       $("li:lt(5)").addClass("eg_1");
</script>
         <style>
        .eg_1, .eg_2, .eg_3 {color:red;}
        </style> 

http://jsfiddle.net/moslem68/oo907b6s/1/

于 2015-05-17T05:21:18.100 に答える