2016-06-21 1 views
0

У меня есть простой аккордеон, построенный на подключаемом модуле jQuery UI. Плагин работает так, как должен, но я хотел бы добавить класс в элемент clickable (который открывает/закрывает содержимое), так что я могу по-разному стилизовать его.jQuery ui accordion active class

Вот грубая, но функциональная версия CodePen функциональности:

http://codepen.io/moy/pen/dXObjX

Это структура моей наценки:

<div class="mount accordion"> 

    <div class="hgroup accordion__toggle"> 
     <h3 class="hgroup__title">Course 1</h3> 
    </div> 

    <div class="accordion__content"> 
     <!-- Hidden content in here --> 
    </div> 
</div> 

И мой JavaScript:

$(document).ready(function($) { 
    $('.accordion').find('.accordion__toggle').click(function(){ 

     // Expand or collapse this panel 
     $(this).next('.accordion__content').slideToggle(200); 
    }); 
}); 

В настоящее время все панели открыты по умолчанию, если только к .accordion__content добавлен класс .hidden.

Спасибо, надеюсь, что кто-то может помочь с этим!

ответ

0

попробовать что-то, как показано ниже:

$(document).ready(function($) { 
$('.accordion').find('.accordion__toggle').click(function(){ 

    // Expand or collapse this panel 
    $(this).next('.accordion__content').slideToggle(200); 

    //toggle class 
    $(this).toggleClass('classname') 
}); 
}); 
+0

Спасибо, это очень близко! Я думаю, мне просто нужно проверить, скрыт ли '.accordion__content' или нет, поэтому он знает, какой класс применять и когда. Как в этом CodePen: http://codepen.io/moy/pen/dXObjX ... Если я нажимаю заголовки (содержимое закрыто, то нет). Красный цвет, применяемый классом, отображается в противоположных состояниях? – user1406440