画面内に入った要素だけ軽量にアニメーション表示します
スクロールして表示領域に入ったタイミングで、 下からふわっと表示されます。
クラスを変えるだけで別方向のアニメーションも作れます。
CTAや強調ブロックに向いています。
const targets = document.querySelectorAll(
'.fade-up, .fade-left, .zoom-in'
);
const observer = new IntersectionObserver((entries, obs) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('is-show');
obs.unobserve(entry.target);
}
});
},{
root: null,
rootMargin: "0px 0px -15% 0px",
threshold: 0.2
});
targets.forEach(el => observer.observe(el));