[英]Why can't I get the index of this li?
我有一個很長的列表,需要獲取其中每個 li 的索引。 這是我的 html:
<ul id="myUl" class="playlist playlist-one cf">
<li id="test"><a href="#during-your-stay" class="playlist-link" >1. Privacy & Dignity for all</a>[00:34]</li>
<li><a href="#during-your-stay" class="playlist-link" >2. Medicines</a>[00:44]</li>
<li><a href="#during-your-stay" class="playlist-link" >3. Allergies</a>[00:25]</li>
</ul>
我的 jquery:
$(".playlist-link").click(function(){
var thisLi=$(this).parent();
var theUl= $(thisLi).parent();
var index =theUl.index(thisLi);
alert("ul id: " + theUl.attr('id') +"\n the li: " + thisLi.attr('id') +"\n index: "+index +"\n" )
});
我的警報顯示我的索引在返回 -1 時不起作用。 但是我的語法正確(我認為)因為變量使用包含正確的元素。 這是警報的 output:
ul id: myUl
the li: test
index: -1
那么為什么它返回-1???
index()
返回一個元素在一組元素中的索引,而不是在該集合中第一個元素的子元素中。
您的theUl
變量只包含一個元素 - <ul>
標記。 由於該集合沒有您的<li>
標記,因此index()
返回-1
。
您可以編寫theUl.children().index(thisLi)
以在<ul>
的孩子中查找<li>
的索引。
您也可以只編寫thisLi.index()
來返回<li>
在其直接父級中的索引。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.