ホームページのメインビジュアルに、CSSアニメーションを作りました。
しかし、ページのロードが完了する前に、CSSアニメーションが始まってしまいました。
ややロードに時間がかかるホームページだったので、CSSアニメーションがうまく見せられないという事象が発生しました。
そこで、JavaScriptを使って、コントロールする方法を学んだのでメモしておきます。
目次
使うのは「addEventListener」
使うのは、JSのaddEventListenerです。
最初は、window.onloadを使っていましたが、こちらは複数の命令が発生すると、上書きされてしまうので、addEventListenerを使った方が良いでしょう。
具体的には、このようなプログラムを書きました。
<div id="feedin">フェードインテキスト</div>
#feedin {
opacity: 0;
}
.alpha {
animation:alpha 5s;
animation-fill-mode:forwards;
}
@keyframes alpha {
0% {
opacity:0;
}
100% {
opacity:1;
}
}
window.addEventListener('load', function() {
var anime1 = document.getElementById("feedin");
anime1.classList.add("alpha");
})
以上です。