본문 바로가기
공부 정리/jsChallenge

js challenge day 24

by 경적필패. 2023. 2. 24.
반응형

sticky Nav

Code

  <script>
    const nav = document.querySelector('#main');
    let topOfNav = nav.offsetTop;
    const fixNav = () => {
      if (window.scrollY >= topOfNav) {
        document.body.style.paddingTop = nav.offsetHeight + 'px';
        document.body.classList.add('fixed-nav');
      } else {
        document.body.classList.remove('fixed-nav');
        document.body.style.paddingTop = 0;
      }
    }
    window.addEventListener('scroll', fixNav);
  </script>

배운 점 &  느낀 점

sticky예제를 구현하는 과제였습니다.

sticky가 fixed랑 유사한점이 많은데, 역시 sticky는 fixed로 구현할 수 있었습니다.

nav의 offsetTop을 저장한 다음, 스크롤을 내릴때마다 fixNav함수를 호출하여 scrollY가 topOfNav보다 커질때 nav를 fixed하는 방식을 사용했습니다.

반응형

'공부 정리 > jsChallenge' 카테고리의 다른 글

js challenge day 26  (0) 2023.02.28
js challenge day 25  (0) 2023.02.27
js challenge day 23  (0) 2023.02.23
js challenge day 22  (0) 2023.02.22
js challenge day 21  (0) 2023.02.21

댓글