2014-02-06 71 views
0

我有一些動態創建的內容,其中可能有2個或可能有200個DIV - 每個div都有一些我想要切換的內容和一個顯示內容的箭頭。Jquery切換項目數未知

我可以得到切換等工作正常,但當它切換切換一切(即所有與類名稱的項目 - 因爲它應該),但我只希望它切換相關的。

<div id="outer"> 
    <div class="inner"> 
     <div class="left"> 
      <div class="expanded"> 
       12345 
      </div> 
     </div> 
     <div class="right"> 
      <div class="arrow-down"></div> 
     </div> 
    </div> 
    <div class="inner"> 
     <div class="left"> 
      <div class="expanded"> 
       12345 
      </div> 
     </div> 
     <div class="right"> 
      <div class="arrow-down"></div> 
     </div> 
    </div> 
    <div class="inner"> 
     <div class="left"> 
      <div class="expanded"> 
       12345 
      </div> 
     </div> 
     <div class="right"> 
      <div class="arrow-down"></div> 
     </div> 
    </div>  
</div> 

toggling dynamically created divs in jquery我曾嘗試建議使用並從Toggle dynamically created divs使用下一個/上,但是當我使用這些沒有任何反應,並沒有什麼在DevTools幫助

任何人都可以點我在正確的方向,所以當我點擊每個箭頭時,只有它的擴展框出現? Fiddle

+0

http://jsfiddle.net/pgJf4/1/ –

回答

1

您可以在同一inner元素

$(".arrow-down").click(function() { 
    $(this).closest('.inner').find('.expanded').toggle("slow"); 
}); 

演示中定位擴展元素E本以獲得目標元素

$(".arrow-down").click(function() { 
    $(this).parent().parent().find('.expanded').toggle("slow"); 
}); 
+0

它可能會使用事件委派,而不是有用的。這樣只有一個事件處理程序,並且在添加新元素時不需要重新應用點擊處理程序:http://jsfiddle.net/Fbu99/2/ – Munter

+0

@Munter是,如果項目是動態添加的事件代表團可能需要 –

+0

工作很好,謝謝 – bhttoan