2014-09-04 53 views
0

我有幾個這樣的標記作爲來自用戶的帖子,我想要的是當用戶點擊.showComments div滑落,並且它在所有div上使用.threadCommentsjquery函數不能在特定的div上共享類名

<div class="row"> 

    <div class="large-2 columns" align="center"> 

     <img class="th" src="http://placehold.it/60x60&text=[img]"/> 
     <span class="user_under_thumbnail">Andrei</span> 

    </div> 
    <div class="large-10 columns"> 

     <p class="speechBubbleMain">1 ipsum dolor sit amet nulla ham qui sint exercitation eiusmod commodo, chuck duis velit. Aute in reprehenderit, dolore aliqua non est magna in labore pig pork biltong.</p> 
     <ul class="inline-list"> 
      <li class="threadoptions"><a>Preview</a></li> 
      <li class="threadoptions"><a>Share</a></li> 
      <li class="threadoptions"><a class="showComments">Comments</a></li> 
     </ul> 

     <div class="ThreadComments"> <!-- Here is the collapsible part --> 
      <div class="row collapse"> 
       <div class="large-1 columns small-3" align="center"><img src="http://placehold.it/35x35&text=[img]"/></div> 
       <div class="large-11 columns"><p class="speechBubbleSecondary"><strong class="commenter_name">George</strong> Bacon ipsum dolor sit amet nulla ham qui sint exercitation eiusmod commodo, chuck duis velit. Aute in reprehenderit</p></div> 
      </div> 
      <div class="row collapse"> 
       <div class="large-1 columns small-3" align="center"><img src="http://placehold.it/35x35&text=[img]"/></div> 
       <div class="large-11 columns"><p class="speechBubbleSecondary"><strong class="commenter_name">Iordache</strong> Bacon ipsum dolor sit amet nulla ham qui sint exercitation eiusmod commodo, chuck duis velit. Aute in reprehenderit</p></div> 
      </div> 
      <div class="row collapse"> <!-- the user's input --> 
       <div class="large-1 columns small-3" align="center"><img src="http://placehold.it/35x35&text=[img]"/></div> 
       <div class="large-11 columns"><textarea class="thread_submit_comment"></textarea></div> 
      </div> 
     </div> 
    </div> 
</div> 

我曾嘗試爲波紋管上市下來多種方法,但都觸發所有的div .threadComments

$('.ThreadComments').hide(); 
     $(".showComments").click(function(e) { 
      e.preventDefault(); 

      var slidethis = $(this).parent().find('.ThreadComments'); 
      //or 
      var slidethis = $(this).closest('.showComments').find('.ThreadComments'); 
      //or 
      var slidethis = $(this).closest('.showComments').next('.ThreadComments'); 
      //or 
      var slidethis = $(this).parents('.inline-list').closest('.ThreadComments'); 

      $('.ThreadComments').not(slidethis).slideToggle(); 
      slidethis.stop().slideToggle(); 

     }); 

但他們似乎都觸發所有的div .threadComments。 我已經在StackOverflow上檢查了關於這個問題的所有最近的帖子,但似乎沒有爲我工作,是否與標記有關?無法弄清楚我做錯了什麼。

回答

1

試試這個:

$('.ThreadComments').hide(); 
$(".showComments").click(function(e) { 
    var slidethis = $(this).parents('.inline-list').next('.ThreadComments'); 
    slidethis.slideToggle(); 
    e.preventDefault(); 
}); 

JSFiddle

+1

作品,雖然我仍然感到困惑,爲什麼沒有它的工作時,我試了一下,還是讓我周圍的Jquery頭,謝謝。 – Tiberiu 2014-09-04 09:50:56

+0

很高興爲您效勞! – Vikram 2014-09-04 10:00:57