正在删除单击问题上的活动类

Removing active class on click issue

本文关键字:活动 问题 删除 单击      更新时间:2023-09-26

我对我正在处理的一个项目有一些过滤器,一旦点击,它就会被赋予一个active类,然后它会在点击的列表项中显示一个名为info-pane的div。

过滤器是6个蓝色的盒子。我使用下面的jQuery来添加和删除活动类,但是当我想通过单击具有活动类状态但似乎不起作用的列表项来尝试删除活动类时,问题就来了。

我正在尝试的代码;

$(".filters > ul > li").click(function() {
    $(".filters > ul > li").removeClass("active");
    $(this).toggleClass("active");
});
$(".filters > ul > li.active").click(function() {
    $(this).removeClass("active");
});

这里有一个直播项目的链接;http://client.n8geeks.com/

试试这个:

$(".filters > ul > li").click(function() {
    $(".filters > ul > li").not($(this).toggleClass("active")).removeClass("active");
});

首先,您不需要为该点击创建两个事件。下面是一个例子。但我看不出你的问题在哪里。在你的实时项目中,我可以看到过滤器在你点击后会发生变化。。?

$(".filters > ul > li").click(function() {
        $(".filters").find('li').removeClass('active');    
        $(this).addClass("active");
    });

编辑:

我不知道我是否理解正确,但我可以看到,当你点击"x"时,什么都不会发生。。所以功能重置你的过滤器。

(未测试)

$(".close").click(function(){
  $(this).closest('ul > li').find('input[type="checkbox"]').each(function( index ) {
    $(this).prop('checked', false);
  });   
});