$('.aClass')[index].addClass('newClass');
これは私がやろうとしていることですが、機能していません。さらに、その後のコードが壊れています。私は何を間違っているのですか?
$('.aClass')[index].addClass('newClass');
これは私がやろうとしていることですが、機能していません。さらに、その後のコードが壊れています。私は何を間違っているのですか?
このようなインデックスを使用すると、DOM要素が返されるため、jQueryメソッドは返されません。
.eq()
代わりに、jQueryでラップされたまま、そのインデックスでDOM要素を返すために使用します。
//as a function call
$('.aClass').eq(index).addClass('newClass');
セレクター:eq
もありますが、フォームと使用法の点でメソッドバージョンとわずかに異なります。インデックスはセレクター文字列の一部であるため、動的な値を使用する場合は、文字列を切り取る必要があります。
//the selector version:
$('.aClass:eq('+index+')').addClass('newClass');
さらに情報:あなたがしたことは、そのインデックスで、jQueryにラップされていない.get()
DOM要素を返すaに似ていました:
//the same thing
$('.aClass').get(index)
$('.aClass')[index]