javascript - 删除类不起作用

标签 javascript jquery removeclass

我有一个非常简单的问题,实际上这不是问题,这是修复javascript错误,无论如何,这是代码:

    $(document).ready(function() {
        $('#accordion a.item').click(function () {
            $(this).addClass('selected');
            $(this).removeClass('selected');
            $('#accordion li').children('ul').slideUp('slow'); 
            $(this).siblings('ul').slideDown('slow');  
        });
    });

和 html:

<ul id="accordion">
    <li>
        <a href="#" class="item">BANKS</a>
        <ul>BLA BLA BLA</ul>
    </li>
    <li>
        <a href="#" class="item">PETROL</a>
        <ul>BLA BLA BLA</ul>
    </li>
</ul>

当我单击其中一个链接时,“选定”类会添加到其中,但是当我单击另一个链接时,“选定”类不会删除,那里可能存在什么错误?

谢谢大家的帮助!我真的很感激!

最佳答案

目前尚不清楚您要做什么,但看起来您想要将该类添加到单击的元素中,并从其所有同级元素中删除它。您当前的代码向同一元素添加和删除类,但最终没有执行任何操作。

你可能想要类似的东西

$(document).ready(function() {
    $items = $('#accordion a.item'); // all the items
    $items.click(function () {
        $items.removeClass('selected'); // remove class from everything
        $(this).addClass('selected'); // add class to clicked item
        $('#accordion li').children('ul').slideUp('slow'); 
        $(this).siblings('ul').slideDown('slow');  
    });
});

关于javascript - 删除类不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9990514/

相关文章:

javascript - node.js 从字符串属性名称设置属性

javascript - AngularJS - 选择的 ng-model 无法正常工作

Javascript 在 asp.net 复选框列表中不起作用

javascript - 使用 javascript/jquery 完全删除具有特定类的 div 的所有实例?

javascript - 自动聚焦于联系表 7 的首次输入

javascript - 使用 Rafael.js 绘制带虚线的矩形

javascript - 滚动魔法。向一个元素添加多个类

javascript - 测试对象是否是 DOM 元素

jquery 单击时反转类属性

javascript - 如何删除 javascript/jquery 中一个类的所有实例?