2014-09-10 94 views
0

你好,我有下面的代碼爲常見問題切換,但問題是當我點擊任何問題,它滑動並完美顯示答案,但所有問題觸發器中的所有箭頭。常見問題切換箭頭動畫

<div class="faqbox" id="faq-list"> 
    <div class="qblock"> 
     <span class="arrow"></span> 
     <h2>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</h2> 
     <div class="answer"> 
      <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euism tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip.</p>  
     </div><!-- answer --> 
    </div><!-- qblock --> 

    <div class="qblock"> 
     <span class="arrow"></span> 
     <h2>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</h2> 
     <div class="answer"> 
      <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euism tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip.</p>  
     </div><!-- answer --> 
    </div><!-- qblock --> 


</div><!-- faqbox --> 

這是JS

function toggleFaqArrow(){  
    $('.qblock .arrow').toggleClass('rotate'); 
} 
$(document).ready(function() { 
    $('.qblock h2').click(function(){ 
     $(this).next('.answer').slideToggle(500); 
     $(this).toggleClass('close'); 
     toggleFaqArrow(); 
    }); 
}); 

回答

0

toggleFaqArrow()功能目標所有arrow類元素全qblock類元素。您只需要將rotate類別的sibling切換爲點擊h2元素的類別arrow

爲了實現這一目標,改變你的JS到:

$(document).ready(function() { 
    $('.qblock h2').click(function(){ 
     $(this).next('.answer').slideToggle(500); 
     $(this).toggleClass('close'); 
     $(this).siblings('.arrow').toggleClass('rotate'); 
    }); 
}); 
+0

由於現在它的正常工作。 – 2014-09-10 13:36:23

+0

還有一件事。你在h2上看到點擊。我也想讓箭頭點擊也可以。手段如果我們點擊問題的任何地方,它應該下降。這裏是JSFiddle鏈接http://jsfiddle.net/sam53/pt8dkm54/2/ – 2014-09-10 13:43:56

+0

@NaveedJavaid在你的情況下,我會放棄箭頭的範圍,並設置[:後](http://www.w3.org/wiki/CSS/Selectors /僞元素/:之後)僞選擇器來顯示和轉換箭頭。就像在這[FIDDLE]中一樣(http://jsfiddle.net/pt8dkm54/3/)。 – ZiNNED 2014-09-10 14:18:06