2011-04-26 44 views
0

我可以使用下面的代碼,它返回一個數字被點擊當前的鏈接點擊,告訴我,第n個鏈接被點擊:查找其UL列表的鏈接已經使用jQuery

$("#thumbs ul a").live('click',function(){ 
     index_image = $("#thumbs ul a").index(this); 
    } 

但是,我想知道哪個ul列表裏面有點擊鏈接。我也希望這個返回一個數字,例如第二個ul已被點擊。我一直在試圖與一些運氣以下解決方案:

//Solution One 
    $("#thumbs ul a").live('click',function(){ 
     index_image = $("#thumbs ul a").index(this); 
     $("#thumbs ul a").parent('ul').index(this); 
    } 

    //Solution Two 
    $("#thumbs ul").live('click',function(){ 
     $("#thumbs ul").index(this); 
    } 

的HTML標記,如下所示:

<div id="thumbs"> 
     <ul> 
      <li><a href="#">Link 1</a></li> 
      <li><a href="#">Link 2</a></li> 
     </ul> 
     <ul> 
      <li><a href="#">Link 1</a></li> 
      <li><a href="#">Link 2</a></li> 
     </ul> 
     <ul> 
      <li><a href="#">Link 1</a></li> 
      <li><a href="#">Link 2</a></li> 
     </ul> 
    </div> 
+0

你期望返回的號碼去哪裏? – 2011-04-26 10:41:00

回答

1

你可以嘗試解決一個與此:

//Solution One 
$("#thumbs ul a").live('click',function(){ 
    index_image = $("#thumbs ul a").index(this); 
    var parentUl = $(this).closest('ul'); // this will return the ul container object 
} 

你可以然後使用parentUl變量進行操作,該變量是您正在查找的ul元素的引用。

+0

這並沒有提供解決方案,但它確實幫助我大量找到解決方案。如下所示: $(「#thumbs ul a」)。live('click',function(){ index_image = $(「#thumbs ul a」)。index(this); var parentUl = $(這個).closest('ul'); //這將返回ul容器對象 index_line = $(「#thumbs ul」)。index(parentUl); } – Nagra 2011-04-26 11:20:12

+0

很高興幫助。想要與parentUl對象,所以我只是把它留在那裏讓你玩。 – 2011-04-27 01:29:01