Задать вопрос
@Sashjkeee
f-e

Как правильно написать условие?

Есть вот такой код html
<div class="swiper-slide slide1">
	<div class="wrapp">
		<div class="animations">
			<div class="anim anim0 fadeUp">
				<img src="img/anim0.png" height="105" width="1200" alt="">
			</div>
			<div class="anim anim1 slideRight">
				<img src="img/anim1.png" height="48" width="589" alt="">
			</div>
			<div class="anim anim2 slideLeft">
				<img src="img/anim2.png" height="34" width="385" alt="">
				<span class="model">AS 350 B3<i>e</i></span>
			</div>
			<div class="anim anim3 slideRight">
				<img src="img/anim3.png" height="46" width="1200" alt="">
				<span class="model_description">
					<div>открывая горизонты</div>
				</span>
			</div>
		</div>
	</div>
</div>


Нужно написать условие, что если у класса swiper-slide имеется класс swiper-slide-active, то
классу animations добавляется класс animated.

С этим проблем нету, но что написать, чтобы постоянно проверял, есть ли такой класс? не использую setInterval

Точнее нужно, чтобы скрипт проверял, есть ли у слайдера swiper-slide класс swiper-slide-active, слайд переключился - опять проверил и т.д.
  • Вопрос задан
  • 341 просмотр
Подписаться 2 Оценить 3 комментария
Решения вопроса 1
А почему бы просто не воспользоваться api слайдера и обрабатывать callback?
Пример
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@makerkz
Можете воспользоваться MutationObservers. Правда не все браузеры это поддерживают, для этого есть Mutation Events. Вы бы написали, какой фреймворк используете, т.к. почти везде есть механизмы наблюдения за изменениями.

var element = document.getElementsByClassName('swiper-slide')[0];

var observer = new MutationObserver(function (mutations) {
  mutations.forEach(function (mutation) {
    // Проверяете на тип изменения, наличие классов и т.д.
  });
});

observer.observe(element, {attributes: true});
Ответ написан
@mazgolom
HTML5,CSS3,Javascript,PhP ,Jquery
if( $('.swiper-slide').hasClass("swiper-slide-active") ){
    $('.animations').addClass('animated');
}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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