JQuery не селектор не работает на активный класс

0

Итак, у меня есть 2 вкладки (Tab1 и Tab2). У одного класса активных и других нет класса. Когда я нажимаю на tab2, он должен переключаться между классом "row" или "list" на основе того, что это такое.

Я могу достичь этого, основываясь на моем коде ниже.

Но когда я нажимаю на Tab1, мне не нужен тот же эффект, потому что у него есть активный класс.

У меня есть следующий код, настроенный для этого. Но это не работает:

    $(document).on('click', '#view:not(.active)', toggleEvent);

    function toggleEvent() {
      $('.view-container').toggleClass('row').toggleClass('list');
    }

Вот jsfiddle: http://jsfiddle.net/RDewq/1/

Делает: не только работает с элементами списка?

  • 0
    Ваш код CSS искажен, у вас есть скобки в скобках, вам здесь это не нужно.
  • 0
    почему отрицательный голос? Это правильный вопрос, с примерами того, что я пробовал вместе с jsfiddle
Теги:
jquery-plugins

1 ответ

2
Лучший ответ

Вы запускаете событие, когда щелчок происходит в div #view, так как у него нет активного класса:

$(document).on('click', '#view a:not(.active)', toggleEvent);
function toggleEvent(){
alert('test');
  $('.view-container').toggleClass('row').toggleClass('list');
}

http://jsfiddle.net/RDewq/2/

  • 1
    $(document).on('click', '#view :not(.active)', toggleEvent); также будет работать
  • 0
    Я согласен, что это так. Кажется, что этого не следует делать, так как щелчок по представлению div # запускает событие, и у него нет класса .active.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню