在切换侧边栏时,jQuery click事件只能工作一次

时间:2018-01-15 04:05:42

标签: javascript jquery

我正在尝试切换侧边栏,但它只能运行一次。我认为查询代码是自我解释的。虽然我可以根据需要编写HTML代码。

    $('.side-menu').on('click', function(){
        $('.control-sidebar').addClass('active-sidebar');
        $('.side-menu').on('click', function(){
            $('.control-sidebar').removeClass('active-sidebar');
        });
    });

3 个答案:

答案 0 :(得分:1)

干净的代码解决方案看起来像这样:

0

答案 1 :(得分:0)

我认为逻辑不正确。

if(!$('.control-sidebar').hasClass('active-sidebar')){...}

当“class-controlbar”类没有“active-sidebar”类时,此代码将运行。

在开头,案例发生,因此您可以单击.side-menu并将类“active-sidebar”添加到DOM。这违背了你的第一个逻辑。

此外,为什么这会在您的代码中发生两次?

$('.side-menu').on('click', function(){...}

解决方案:  使用切换课程:请参阅此https://jsfiddle.net/BeklievParviz/rwnpk0wm/

答案 2 :(得分:0)

$('.side-menu').on('click', function(){
    $('.control-sidebar').toggleClass('active-sidebar');
});

用户此