首页 > 解决方案 > 按数据属性更改元素

问题描述

我有一个手风琴元素,顶部有不同的按钮,可以打开相应的元素。

这些按钮有一个活动类,当单击和删除时会添加该类,反之亦然。

现在我想在单击手风琴标题时将活动类添加到相应的按钮。

我的 HTML:

            <div id="init-list-buttons-block">
            <a href="javascript:;" data-name="Berlin" class="init-btn">
                <span class="init-btn-text">Berlin</span>
            </a> .... </div

        <div id="init-list">
            <div class="init-list-element">
                <div class="init-list-element-headline">
                    <span class="init-list-element-headline-text h2">Berlin</span>
                </div> .. </div> </div>

我的 JS:

$(".init-list-element-headline").click(function() {
    if ($(this).next().height() > 0) {
        $(this).next().addClass("disabled");


        var activeText = $(this).text();
        $('.init-list-buttons-block .init-btn[data-name="' + activeText + '"]').removeClass('active');

    } else {
        $(this).next().removeClass("disabled");

        var activeText = $(this).text();
        $('.init-list-buttons-block .init-btn[data-name="' + activeText + '"]').addClass('active');
    }
});

它不起作用。我究竟做错了什么?

提前非常感谢!

标签: javascripthtmlresponsive-designaccordioncustom-data-attribute

解决方案


我刚刚意识到“init-list-buttons-block”是一个 id,而不是类。愚蠢的错误。

无论如何都要放下这个。


推荐阅读