打开和关闭 class jquery

toggle class on and off jquery

如果点击不同的点击,我如何打开和关闭 class?

我点击了两次,并在点击时切换了 class,但是如果我点击 no 2 no 1,class 仍然处于活动状态。

$('.show-15').on('click', function () {
    if (clicks < 0) {
        clicks = 0
    }
    $(this).toggleClass('active-post');
    cards.slice(clicks, cards.length).fadeOut();
    cards.slice(0, 15).fadeIn();
});

$('.show-25').on('click', function () {
    if (clicks < 0) {
        clicks = 0
    }
    $(this).toggleClass('active-post');
    cards.slice(clicks, cards.length).fadeOut();
    cards.slice(0, 25).fadeIn();
});

你可以这样做:

$('.show-15').on('click', function () {
    if (clicks < 0) {
        clicks = 0
    }
    $(".active-post").not(this).removeClass("active-post");
    $(this).toggleClass('active-post');
    cards.slice(clicks, cards.length).fadeOut();
    cards.slice(0, 15).fadeIn();
});

$('.show-25').on('click', function () {
    if (clicks < 0) {
        clicks = 0
    }
    $(".active-post").not(this).removeClass("active-post");
    $(this).toggleClass('active-post');
    cards.slice(clicks, cards.length).fadeOut();
    cards.slice(0, 25).fadeIn();
});

您可以将 toggle() 事件用作

$(".show-15").toggle(
    function(){
        if (clicks < 0) {
            clicks = 0
        }
        $(this).toggleClass('active-post');
        cards.slice(clicks, cards.length).fadeOut();
        cards.slice(0, 15).fadeIn();},

        function(){
        if (clicks < 0) {
            clicks = 0
        }
        $(this).toggleClass('active-post');
        cards.slice(clicks, cards.length).fadeOut();
        cards.slice(0, 25).fadeIn(););
  });