MrNix21
@MrNix21

Как отследить изменение css стиля у одного элемента и дать определенный класс для другого элемента?

Здравствуйте! Как мне элементу "element1" добавлять или удалять класс в зависимости от того какой стиль display: none/block стоит у элемента "element2" ?
<div class="element1"></div>
<div class="element2" style="display: none"></div>

Т.е. если у element2 display:block, то у element1 должен добавиться класс 'active', если у element2 display:none, то класс 'active' у element1 должен удалиться.
Делал так, но не работает. Для этого нужен какой-то еще тригер?
if ($('.element2').css('display') == 'block') {
        $('.element1').addClass('active');
      } else {
        $('.element1').removeClass('active');
      }

Помогите, пожалуйста, доработать код.
  • Вопрос задан
  • 629 просмотров
Решения вопроса 1
dimovich85
@dimovich85 Куратор тега JavaScript
https://u-academy.net/
Посмотрите MutationObserver.
Вообще, если класс ставите Вы сами в каком-то месте js кода, то Вы можете там же вызвать новое событие сами, а в другом месте подписаться на него как на обычный клик:
$(что-то там).on('вашеИмяСобытия', function(){...})
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы