在ul中单击可交换加号和减号

时间:2019-05-17 07:18:43

标签: jquery twitter-bootstrap twig

问题是,当您打开一个类别而不是另一个类别时,第一个类别会自动关闭(可以),但减号不会更改为加号,我动态生成的内容对我来说有点困难

HTML

{% for category in categories %}
    {% if category.children %}
        <li class="dropdown">
         <a id="mybutton" href="{{ category.href }}" class="dropdown-toggle d-block mybutton" data-toggle="dropdown">{{ category.name }}
            <span class="ttclose hidden-lg" style="float:right"></span>
        </a>
    {% endif %}
{% endfor %}

jQuery

我厌倦了很多不同的方式来做,但是没有找到正确的方式

$('.mybutton').on('click', function() {

    if ($(this).children('span').hasClass('ttopen')) {varche = true} else {varche = false};
    if(varche == false){
        $(this).children('span').addClass("ttopen");
        $(this).children('span').removeClass("ttclose");
    $(this).closest('a[aria-expanded="false"]').find('span').removeClass("ttopen");
        varche = true;
    } else
    {
        $(this).children('span').removeClass("ttopen");
        $(this).children('span').addClass("ttclose");
        varche = false;
    }
    });

1 个答案:

答案 0 :(得分:0)

实际上我是这样做的

$('.dropdown').on('hidden.bs.dropdown', function () {
        $(this).find('span').removeClass('ttopen').addClass('ttclose');
    })