首页 > 解决方案 > 检查 div 是否有子级多次点击按钮

问题描述

我尝试了很多 if 条件,但它仍然做同样的事情:我有产品卡的网格和列表视图按钮。当我单击列表视图按钮时,我需要从网格视图中更改一些元素来更改它们的位置。在此示例中,它的类别标签。所以我有

$('.filter__layout-button--list').on('click', function () {
    $('.category-page__products').addClass('list'),
     $('.product-card').addClass('list'),
     $('.product-card__review-category').children().addClass('list'),
     $('.category-tag.list').insertAfter($('.product-card__top-description'))
  })


$('.filter__layout-button--grid').on('click', function () {
    $('.category-page__products').removeClass('list'),
    $('.product-card__review-category').children().removeClass('list'),
    if ($('.product-card__info-bottom--categorypage').children('.category-tag--categorypage').length === 0) {
      $('.category-tag--categorypage').insertAfter($('.product-card__bottom-price'))
    }
  })

问题是,在我改变观点 3 次之前,这一切正常。三次后,每次我来回单击时,我的类别标签元素都会乘以三……我不明白为什么在我有条件的情况下会发生这种情况……请帮忙!

标签: jquery

解决方案


推荐阅读