Я снова застрял в чем-то, чего просто не понимаю. Любая помощь будет оценена.
Я работаю над модальным окном, вы что-то щелкаете, фон замаскирован, а модальное окно показывает некоторый контент.
У меня есть div с «display: none» и «opacity: 0», и когда пользователь запускает модальный режим, этот div будет перекрывать все и иметь определенную прозрачность для него.
На мой взгляд, что мне нужно сделать, это:
Установите непрозрачность
Выполните цикл «for», который проверит, меньше ли непрозрачность, чем желаемое значение.
Внутри этого цикла выполните setInterval, чтобы постепенно увеличивать значение непрозрачности, пока оно не достигнет желаемого значения.
Когда желаемое значение достигнуто, выполните оператор «if» для «clearInterval».
Мой код пока выглядит следующим образом:
var showMask = document.getElementById('mask');
function fireModal(){
showMask.style.opacity = 0;
showMask.style.display = 'block';
var getCurrentOpacity = showMask.style.opacity;
var increaseOpacity = 0.02;
var finalOpacity = 0.7;
var intervalIncrement = 20;
var timeLapse = 500;
function fadeIn(){
for(var i = getCurrentOpacity; i < finalOpacity; i++){
setInterval(function(){
showMask.style.opacity = i;
}, intervalIncrement)
}
if(getCurrentOpacity == finalOpacity){
clearInterval();
}
}
fadeIn();
}
Как вы все можете догадаться, это не работает, все, что он делает, это устанавливает непрозрачность на «1», не постепенно ее увеличивая.
Заранее спасибо за помощь.