Twitter 引导、折叠菜单和子菜单管理事件



请帮我:

我有这个折叠菜单和子菜单:

<div class="panel-heading" role="tab" id="headingOne">
    <h4 class="panel-title">
        <div class="level1" role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
            My Interests <i class="fa fa-chevron-right pull-right img-panel-1"></i>
        </div>
    </h4>
</div>
<div id="collapseOne" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingOne">
    <div class="panel-body">
        <div class="sub-menus">
            <div class="panel-1-1" href="#sub1" data-toggle="collapse">
                MY MOVIES <i class="fa fa-chevron-right pull-right img-panel_1_1"></i>
            </div>
            <div class="collapse" id="sub1">
                <a href="#">
                    Action 
                </a>
                <hr>
                <a href="#">
                     dventure 
                </a>
                <hr>
                <a href="#">
                    Add / Remove 
                </a>
            </div>
            <br>
            <div class="panel-1-2" href="#sub2" data-toggle="collapse">
                MY CHANNELS <i class="fa fa-chevron-right pull-right img-panel_1_2"></i>
            </div>
            <div class="collapse" id="sub2">
                <a href="#">
                    80's Rock 
                </a>
                <hr>
                <a href="#">
                   Hip Hop 
                </a>
                <hr>
                <a href="#">
                    Add / Remove 
                </a>
            </div>
        </div>
    </div>
</div>

我正在使用这些事件来更改单击的链接(折叠项目)的箭头图像:

$('.panel-1').on('hidden.bs.collapse', function () {
    $('.img-panel-1').toggleClass('fa-chevron-right fa-chevron-down');
});
$('.panel-1').on('shown.bs.collapse', function () {
    $('.img-panel-1').toggleClass('fa-chevron-right fa-chevron-down');
});
$('#collapseOne').on('hidden.bs.collapse', function () {
    $('.img-panel_1_1').toggleClass('fa-chevron-right fa-chevron-down');
});
$('#collapseOne').on('shown.bs.collapse', function () {
    $('.img-panel_1_1').toggleClass('fa-chevron-right fa-chevron-down');
});
$('#collapseOne').on('hidden.bs.collapse', function () {
    $('.img-panel_1_2').toggleClass('fa-chevron-right fa-chevron-down');
});
$('#collapseOne').on('shown.bs.collapse', function () {
    $('.img-panel_1_2').toggleClass('fa-chevron-right fa-chevron-down');
});

但是当我单击任何链接(折叠项目)时,所有图像都会更改,该事件会同时应用于菜单和子菜单,我需要图像仅在单击时在菜单或子菜单(如果仅单击此链接)更改

在这里你可以看到这个箭头会发生什么

谢谢。

好的,回答我自己的问题:

有必要为每个面板组类分配一个不同的id,并将其与子属性数据父级相关联,这解决了提出的问题。

在这里,您可以看到代码在;)

最新更新