将类添加到单击的项并从所有其他项中删除,但如果再次单击同一项,则也从该项中删除类,jQuery

将类添加到单击的项并从所有其他项中删除,但如果再次单击同一项,则也从该项中删除类,jQuery,jquery,Jquery,我的问题有两部分,第一部分我很清楚,第二部分我有问题 这是我正在尝试的代码 $('.myDiv').click(function(e){ $('.myDiv').next('.child').removeClass('test'); $(this).next('.child').toggleClass('test'); }); 这段代码在第一部分做得很好,将类添加到clicked div并从所有其他文件中删除,但是如果我要再次单击同一个myDiv,则还需要从该文件中删

我的问题有两部分,第一部分我很清楚,第二部分我有问题

这是我正在尝试的代码

$('.myDiv').click(function(e){
    $('.myDiv').next('.child').removeClass('test');
    $(this).next('.child').toggleClass('test');     
});

这段代码在第一部分做得很好,将类添加到clicked div并从所有其他文件中删除,但是如果我要再次单击同一个myDiv,则还需要从该文件中删除类测试。

您需要从
$('.myDiv')中排除当前单击的div,即
this
使用方法匹配元素,然后删除类

$('.myDiv').click(function(e){
    $('.myDiv').not(this).next('.child').removeClass('test');
    $(this).next('.child').toggleClass('test');     
});

您需要使用方法从
$('.myDiv')
匹配的元素中排除当前单击的div,即
,然后删除类

$('.myDiv').click(function(e){
    $('.myDiv').not(this).next('.child').removeClass('test');
    $(this).next('.child').toggleClass('test');     
});

感谢satpal的快速解决方案,我还有一个问题,我可以在这里的评论中问你,或者问一个新的问题吗question@Atul,你也可以在评论中分享你的问题,如果我可以的话,我一定会帮你的。谢谢你的快速解决方案。satpal,我还有一个问题,我可以在评论中问你还是问一个新问题question@Atul,你也可以在评论中分享你的问题,如果可以的话,我一定会帮你的