Задать вопрос

$animate.addClass( не всегда добавляет класс если запускать на событие onmouseover?

На событие onmouseover на одном из елементов компонента садится метод, который запускает $animate.addClass(
Ни какие переменные, которые есть в this самого контроллера не меняются, контроллер подключается как ControllerAs при этом на самом элементе класс не меняется и promise не отрабатывает.

let el = angular.element(elements[this.activeIndex]);
        let elm = elements[this.activeIndex];

        //el.addClass('active'); // это работает

        let promise = $animate.addClass(elm, 'active');
        console.log('element active 1', el.hasClass('active'));// показывает false
        promise.then(()=>{
          console.log('set element active 2', el.hasClass('active'));//это не отрабатывает
        });


Смущает в документации вот эта фраза
Upon execution, the addClass operation will only be handled after the next digest

https://docs.angularjs.org/api/ng/service/$animate
  • Вопрос задан
  • 85 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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