Javascript 按数据属性更改元素

Javascript 按数据属性更改元素,javascript,html,responsive-design,accordion,custom-data-attribute,Javascript,Html,Responsive Design,Accordion,Custom Data Attribute,我有一个手风琴元素,顶部有不同的按钮,可以打开相应的元素 按钮有一个活动类,单击时添加该类,反之亦然 现在我想在单击accordion标题时将活动类添加到相应的按钮 我的HTML: <div id="init-list-buttons-block"> <a href="javascript:;" data-name="Berlin" class="init-btn"> <span cla

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

按钮有一个活动类,单击时添加该类,反之亦然

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

我的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>
它不起作用。我做错了什么

提前多谢

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


不管怎么说,我还是要把这件事忘了

与其检查高度,不如使用
.hide()
.show()
然后检查元素是否可见?试试
var-activeText=$(this.text().trim()
删除文本周围的所有空白。手风琴本身是由我的朋友实现的。我只想添加一些额外的函数。很遗憾,修剪不起作用。你能同时发布其他代码吗?该问题应该以打字错误结束,而不是回答。遗憾的是,我没有足够的信誉点来结束我自己的问题。你可以将其标记为版主删除。完成。谢谢你的帮助!
$(".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');
    }
});