要素の順序付きリストを作成するとき、インデックスで1つにアクセスするための3つの合理的な方法を考えることができます。
最後に数字が付いた一意のIDを指定し、文字列操作を使用します。
<ol>
<li id="item-0"></li>
<li id="item-1"></li>
<li id="item-2"></li>
</ol>
...
for(var i = 0; i < 3; i++) {
$('#item-' + i).doWhatever();
}
それらに同じクラスを与え、eq
セレクターを使用します。
<ol>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
</ol>
...
for(var i = 0; i < 3; i++) {
$('.item').eq(i).doWhatever();
}
または、同じクラスを指定して、nth-child
セレクターを使用します。
<ol>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
</ol>
...
for(var i = 1; i <= 3; i++) {
$('.item:nth-child(' + i + ')').doWhatever();
}
それぞれの長所と短所は何ですか?他にもっと良い方法はありますか?