Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 角度UI引导Accordion向标头添加类_Javascript_Angularjs_Twitter Bootstrap_Accordion - Fatal编程技术网

Javascript 角度UI引导Accordion向标头添加类

Javascript 角度UI引导Accordion向标头添加类,javascript,angularjs,twitter-bootstrap,accordion,Javascript,Angularjs,Twitter Bootstrap,Accordion,我有下面的手风琴,很好用 <accordion-group is-open="open.first"> <accordion-heading> My Title </accordion-heading> </accordion-group> 我想我必须作为一个指令来做,但不太确定如何做?假设您在指令上使用ng repeat,您可以这样做: <accordion-group ng-repea

我有下面的手风琴,很好用

<accordion-group is-open="open.first">
        <accordion-heading>
          My Title
        </accordion-heading>
</accordion-group>

我想我必须作为一个指令来做,但不太确定如何做?

假设您在
指令上使用
ng repeat
,您可以这样做:

<accordion-group ng-repeat="group in groups" ng-init="group.isOpen = false" ng-class="{'open': group.isOpen}" is-open="group.isOpen">


这将初始化
ng init
中名为
isOpen
的新
$scope
变量,该变量附加到要重复的单个组(
group.isOpen
)。在上面的示例中,我将其设置为false,以便在加载时关闭所有手风琴组,然后将该变量指定给
是打开的。当您单击或“打开”其中一个手风琴组时,指令将自动将
group.isOpen
更改为
true
。这将允许
ng类
表达式也计算
true
,并将类“open”添加到DOM中的面板标题。

使用developertools“f12”,我看到面板在打开时添加了一个“in”类。从那里可以执行以下操作:$(This).addClass('someClass')$触发器('cssClassChanged')$(其他选择器).bind('cssClassChanged',数据,函数(){do stuff});这是内容面板,切换时标题面板没有添加任何内容。当我尝试添加它时,由于纯jquery,它似乎不会触发,我认为由于页面加载和视图加载时间不同等原因,我认为需要通过myModule.directive('my-directive',['$animate',函数($animate)中的directivemodified副本添加它{return function(scope,element,attrs){element.on('click',function();
$('.panel-heading .panel-title').on('click', function () {   
    $(this).toggleClass('actives'); 
 });
<accordion-group ng-repeat="group in groups" ng-init="group.isOpen = false" ng-class="{'open': group.isOpen}" is-open="group.isOpen">