コンテナ内のクラスが「選択された」位置にあるli要素を取得するにはどうすればよいですか?
<ul>
<li></li>
<li class="selected"></li>
<li></li>
</ul>
この場合、コンテナ内の 2 番目の li であるため、2 を返す必要があります。
コンテナ内のクラスが「選択された」位置にあるli要素を取得するにはどうすればよいですか?
<ul>
<li></li>
<li class="selected"></li>
<li></li>
</ul>
この場合、コンテナ内の 2 番目の li であるため、2 を返す必要があります。
var elem = $('li.selected');
$('ul li').index(elem);
要素のインデックスは 0 から始まるため、これは 1 を返します。
$(".selected").index();
.index(...)
jQuery関数を確認してください。
index関数は、ノードの位置を1からではなく0から返すため、最初の要素は「ゼロインデックス内」になることに注意してください。
これを読むことができます:兄弟間の要素番号/インデックスを取得する方法
var selectedIndex = $("#selected").index() + 1;
var selectedIndex = $(".selected").index() + 1;
(あなたのために)
それは受け入れられた答えであり、あなたの質問にも適しています。
Index ()プロパティも参照してください。
これを試して
HTML
<ul>
<li></li>
<li class="selected"></li>
<li></li>
</ul>
JS
var selectedIndex=$("ul li.selected").index()+1;
alert(selectedIndex); // outputs 2
基本的に、最初のインデックスは0
であり、2 番目のインデックスは1
であるため+1
、質問に従って使用されています。2 番目のインデックスを の2
代わりに取得します1
。
デモ。