Это должно дать вам представление о том, как изменить непрозрачность с течением времени, используя setInterval
.
Я оставляю вам право продолжать «цикл» вместо того, чтобы заканчивать его, когда мы достигнем 100%. (В качестве подсказки вы можете написать аналогичную функцию под названием «lighten» и использовать логическое значение «GettingDarker», чтобы помочь решить, какую функцию вызывать.)
const myDiv = document.getElementById("myDiv"); // Gets a reference to the div
let opacity = 0.3; // Initializes the JavaScript variable
myDiv.style.opacity = opacity; // Initializes the div's opacity
// Calls `darken` every 500ms
// (Identifies `ticker` so we could later pass it to `clearInterval`)
const ticker = setInterval(darken, 500);
function darken(){
console.log(opacity);
if(opacity < 1){
opacity += 0.1; // Increases the value
myDiv.style.opacity = opacity; // Applies the new value to the div
}
else{ // Already 100% opaque, so stop calling the function
clearInterval(ticker);
}
}
<div id="myDiv">Text that gets darker</div>