2014-04-11 33 views
0

我有這個排序列表:獲取帶ID的li索引?

  <ul id="sortable"> 
       <li id="Item1"><img src="../../../../IMAGES/04_01/P2_0401_18.jpg" /></li> 
       <li id="Item2"><img src="../../../../IMAGES/04_01/P2_0401_20.jpg" /></li> 
       <li id="Item3"><img src="../../../../IMAGES/04_01/P2_0401_22.jpg" /></li> 
       <li id="Item4"><img src="../../../../IMAGES/04_01/P2_0401_24.jpg" /></li> 
       <li id="Item5"><img src="../../../../IMAGES/04_01/P2_0401_26.jpg" /></li> 
       <li id="Item6"><img src="../../../../IMAGES/04_01/P2_0401_28.jpg" /></li> 
      </ul> 

當然,當用戶移動的項目,每個項目ID的變化指標。我想要做的是將項目的新索引存儲在單獨的變量itemIndex1, itemIndex2, etc中,以便我可以在稍後運行的函數中檢查它們的位置。

這是造成我的難題代碼:

var itemIndex1 = $('#sortable li').index($('#sortable li:nth-child(1)')); 
var itemIndex2 = $('#sortable li').index($('#sortable li:nth-child(2)')); 
var itemIndex3 = $('#sortable li').index($('#sortable li:nth-child(3)')); 
var itemIndex4 = $('#sortable li').index($('#sortable li:nth-child(4)')); 
var itemIndex5 = $('#sortable li').index($('#sortable li:nth-child(5)')); 
var itemIndex6 = $('#sortable li').index($('#sortable li:nth-child(6)')); 

,我發現在這裏計算器另一個問題該解決方案,但它並沒有真正適合我的目的,因爲每個itemIndex只是返回每個L1的指標孩子,不管其身份。 itemIndex1總是會返回0itemIndex2總是返回1

我希望能夠得到的#Item4的指數,例如,如果用戶已經拖它的0指數。

回答

2

在它自己的只需使用.index

var idx = $("#Item4").index(); 

如果沒有參數被傳遞給所述的.index()的方法,所述返回值是 的整數,指示在第一元件的 內的位置jQuery對象相對於其同級元素