为什么Bootstrap 3手风琴jquery对我不起作用

时间:2015-05-15 15:31:56

标签: jquery html twitter-bootstrap

请帮我解决bootstrap 3中手风琴上下glyphicon相关的问题。这是我的HTML代码

<div class="panel panel-default">
                            <div class="panel-heading">
                                <h4 class="panel-title">
                                    <a data-toggle="collapse" class="accordion-toggle" data-parent="#accordian" href="#mens">
                                        <span class="glyphicon glyphicon-chevron-down pull-right"></span>
                                        Dabur
                                    </a>
                                </h4>
                            </div>
                            <div id="mens" class="panel-collapse collapse">
                                <div class="panel-body">
                                    <ul>
                                        <li><a href="#">Hair Oil</a></li>
                                        <li><a href="#">Baby Care</a></li>
                                        <li><a href="#">Oral Hygiene</a></li>
                                        <li><a href="#">Shampoo & Conditioner</a></li>
                                        <li><a href="#">Honey</a></li>
                                        <li><a href="#">Candy-Chocolate</a></li>
                                        <li><a href="#">Chyawanprash</a></li>
                                        <li><a href="#">Balm</a></li>
                                        <li><a href="#">Capsules</a></li>
                                        <li><a href="#"> Syrup / Health Tonic</a></li>
                                        <li><a href="#">Churan / Digestive Suppliments</a></li>

                                    </ul> 
                                </div>
                            </div>
                        </div>

这是我的Jquery代码

<script type="text/javascript">
jQuery(document).ready(function($) {
$(document).on('click', '.accordion-toggle', function() {     
    $(".accordion-toggle").each(function() {
        var iconSpan = $(this).find('.glyphicon');
        if ($(this).hasClass('collapsed')) {
            $(iconSpan).removeClass('glyphicon-chevron-up').addClass('glyphicon-chevron-down');
        } else {
            $(iconSpan).removeClass('glyphicon-chevron-down').addClass('glyphicon-chevron-up');
        }
    });
});
});

</script>

我努力模拟问题但是没有解决,如果发现任何错误请解决

1 个答案:

答案 0 :(得分:0)

你可以这样做完全取消jQuery:

对于这个HTML:

<div class="panel panel-default">
    <div class="panel-heading">
        <h4 class="panel-title">
            <a data-toggle="collapse" class="accordion-toggle collapsed" data-parent="#accordian" href="#mens">
                <!-- add both icons to the dom, we'll chow and hide them with CSS -->
                <span class="glyphicon glyphicon-chevron-down pull-right"></span>
                <span class="glyphicon glyphicon-chevron-up pull-right"></span>
                Dabur
            </a>
        </h4>
    </div>
    <div id="mens" class="panel-collapse collapse">
        <div class="panel-body">
            <ul>
                <li><a href="#">Hair Oil</a></li>
                <li><a href="#">Baby Care</a></li>
                <li><a href="#">Oral Hygiene</a></li>
                <li><a href="#">Shampoo & Conditioner</a></li>
                <li><a href="#">Honey</a></li>
                <li><a href="#">Candy-Chocolate</a></li>
                <li><a href="#">Chyawanprash</a></li>
                <li><a href="#">Balm</a></li>
                <li><a href="#">Capsules</a></li>
                <li><a href="#">Syrup / Health Tonic</a></li>
                <li><a href="#">Churan / Digestive Suppliments</a></li>

            </ul>
        </div>
    </div>
</div>

这个CSS:

.accordion-toggle .glyphicon-chevron-down,
.accordion-toggle.collapsed  .glyphicon-chevron-up{
    display:none;
}
.accordion-toggle.collapsed  .glyphicon-chevron-down{
    display:block;
}

See it in this demo