たとえば、私はidを持つdivを持っています( "the_div"と言うことができます)。このdivには順序付けられていないリストがあり、このリストには5つの項目があります。Jquery - x番目の要素を取得
3番目のリストアイテムにクラスを追加するにはどうすればいいですか?リストアイテムにはクラスが追加されていません。
編集:それでも、リスト項目のテキストをどのような番号要素に変更するとよいでしょうか?
ありがとうございました。
たとえば、私はidを持つdivを持っています( "the_div"と言うことができます)。このdivには順序付けられていないリストがあり、このリストには5つの項目があります。Jquery - x番目の要素を取得
3番目のリストアイテムにクラスを追加するにはどうすればいいですか?リストアイテムにはクラスが追加されていません。
編集:それでも、リスト項目のテキストをどのような番号要素に変更するとよいでしょうか?
ありがとうございました。
あなたの最初の問題のために、あなたは0ベースとeq
を、使用することができます。
$('ul li', '#thediv').eq(2).addClass('whatever'); // add class to 3rd item
をあなたの第二の問題について、あなたはすべてのリスト項目を反復処理するためにeach
を使用することができます。コールバック関数は、セット内の現在の要素のインデックスを含む引数を渡す:
$('ul li', '#thediv').each(function(i) {
$(this).text(i); // update each list item with its index, 0 based.
});
を好む場合私は.text(i)ではなく.html(i)と言うでしょう。 +1。 – strager
さて、jQueryは明らかにそれを理解していますが、ポイントを取っています。編集されました。 –
Mmm。ドキュメントを読むと、html()とtext()の唯一の違いは、text()がHTMLをエスケープすることです。明らかにここでは関係ありません。 1つまたは他のものをいつ使用するかについての「ベストプラクティス」がありますか?私はhtml()がおそらくdivsのためであると感じていますが、これはまさにちょっとしたことです。 –