簡體   English   中英

為什么我不能得到這個 li 的索引?

[英]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 &amp; 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>在其直接父級中的索引。

http://api.jquery.com/index

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM