首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >removeclass不工作

removeclass不工作
EN

Stack Overflow用户
提问于 2012-04-03 17:26:15
回答 4查看 2.9K关注 0票数 0

我有一个非常简单的问题,实际上这不是问题,这是修复javascript错误,不管怎样,这是代码:

代码语言: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:

代码语言:javascript
运行
复制
<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>

当我单击其中一个链接时,“selected”类被添加到其中,但当我单击另一个链接时,“selected”类没有被删除,这会是什么错误呢?

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

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-04-03 17:30:25

目前还不清楚您要做什么,但看起来您想要将类添加到单击的元素中,并将其从其所有兄弟元素中删除。您当前的代码向相同的元素添加和删除类,最终什么也不做。

你可能想要像这样的东西

代码语言:javascript
运行
复制
$(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');  
    });
});
票数 3
EN

Stack Overflow用户

发布于 2012-04-03 17:28:48

先使用ToggeleClass方法,然后使用adClass/ removeClass方法。

代码语言:javascript
运行
复制
$("Selector").toggleClass('name of class',true); //apply class
$("Selector").toggleClass('name of class',false); //remove class
票数 0
EN

Stack Overflow用户

发布于 2012-04-03 17:30:34

$(this)是您单击的链接,而不是所有链接。你需要移除所有链接的类。

代码语言:javascript
运行
复制
$(document).ready(function() {
        $('#accordion a.item').click(function () {
            $('#accordion a.item').removeClass('selected');
            $(this).addClass('selected');
            $('#accordion li').children('ul').slideUp('slow'); 
            $(this).siblings('ul').slideDown('slow');  
        });
    });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9990514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档