Для практики решил написать свой JavaSript плагин для модальных окон. Решил добавить возможность анимации background'a, по идее, если функция анимации фона включена, то, фону перед его добавлением в DOM добавляется
opacity: 0;
, а уже после того, как фон появился в DOM-дереве, ему задается CSS класс в котором имеется свойство
opacity: 1;
, но по какой-то причине фон появляется резко, без анимации.
https://codepen.io/anon/pen/ZMZjNN
if (this.options.overlayAnimation === true) {
this.overlay.style.opacity = '0';
this.popUp.parentNode.insertBefore(this.overlay, this.popUp);
this.overlay.classList.add('uzi-popup-bganimate-on');
} else {
this.popUp.parentNode.insertBefore(this.overlay, this.popUp);
}
Кусок кода, где происходит то, о чем я писал выше.
P.S. Если укажите на какие-либо ошибки или посоветуете лучший вариант реализации, буду очень благодарен.