現在、javascriptとcssを使って要素をフェードさせる練習をしているのですが、下記の処理だとなぜか思ったように動いてくれません。
//状況
1.グローバルにフェードを始める基準値をおいた
2.ヘッダーが#heroの高さより下に行ったらフェードインし、上にいったらフェードアウトするように指定した←発火しない、エラーログもはかない
3.#heroの高さより下に行ったら#worksがフェードするように指定した。←正常に動く
最終的には2、3が両方とも正常に動くように処理をしたいのですが、
原因がなんなのか見当がつかなくなってしまったのでご教授お願いします。
const heroController = document.querySelector("#hero").clientHeight; //#heroの高さを取得 function fadeInOut() { const header = document.querySelector("#header"); //#header取得 window.onscroll = function() { //onscrollEvent const scrollPotision = window.pageYOffset; //windowのスクロール量を取得 if (scrollPotision > heroController) { header.classList.add("fadeInHeader"); header.classList.remove("fadeOutHeader"); } else if (scrollPotision < heroController) { header.classList.add("fadeOutHeader"); header.classList.remove("fadeInHeader"); } }; } fadeInOut(); function slidePoint() { const move = document.querySelector("#works"); //#works取得 window.onscroll = function() { //onscrollEvent const scrollPotision = window.pageYOffset; //windowのスクロール量を取得 if (scrollPotision > heroController) { move.classList.add("fadeIn01"); } }; } slidePoint();
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/03/20 02:52
2019/03/20 03:03
2019/03/20 09:27