• 회원가입
  • 로그인
  • 구글아이디로 로그인

[js] JS - 스크롤 정도/위치 진행바 표시기 (Scroll Indicator Bar)

Scroll Indicator Bar 적용 방법

1. 아래 좌표 코드 참고 (샘플)

 

https://codepen.io/tymoshenkoyelyzaveta/pen/QWyKBJa



2. <body> 태그 바로 아래애 아래 코드 추가

※ G5 basic 테마 경우, /theme/basic/head.sub.php 하단.


<div class="scrolled-indicator">

    <div class="scrolled-indicator-fill">

    </div>

</div>

 


3. CSS 파일 하단에 아래 코드 추가

※ G5 basic 테마 경우, /theme/basic/css/default.css 하단.

 

.scrolled-indicator {

  position: fixed;

  top: 0;

  left: 0;

  width: 100%;

  height: 3px;

  background-color: #333;

  z-index:999;

}


.scrolled-indicator-fill {

  width: 0%;

  height: 100%;

  background-color: #e76f51;

}

 


4. </body> 태그 앞쪽에 아래 JS 코드 추가

※ G5 basic 테마 경우, /theme/basic/tail.php 하단 

 

<script>

const scrolledIndicatorFill = document.querySelector(

  ".scrolled-indicator-fill"

);

const btnScrollToTop = document.querySelector("#btnScrollToTop");


// 스크롤 표시 함수

window.addEventListener("scroll", () => {

  //스크롤 가능 정도

  const scrollable = document.documentElement.scrollHeight - window.innerHeight; // 문서전체높이 - window 높이;

  //스크롤 한 정도를 px단위로 표시

  const scroll = window.scrollY;


  let percentageScrolled = 100;

  // 스크롤 가능 시

  if (scrollable > 0) {

    percentageScrolled = Math.ceil((scroll / scrollable) * 100);

  }


  scrolledIndicatorFill.style.width = `${percentageScrolled}%`;

});

</script>

 

PS. 콘텐츠 열람 집중에 방해되니, 가급적이면 적용하지 마세요.



분류 제목
js JS - 예약어 (= 변수명・라벨명・함수명 등으로 사용 불가능한 단어)
js JS - play(), pause() 메서드 - 동영상 재생/멈춤. (= play메서드, pause메서드 =…
js JS - 입력값 길이 제한 후, 경고창 띄우기
js JS - 눈 내리는 효과 (Snowflakes effect)
js JS - CSS 다크모드 토글 (Dark Mode Toggle) ※ 클래스 상호 대체/변환
js JS - 스크롤 정도/위치 진행바 표시기 (Scroll Indicator Bar)
js JS - 숫자 (카운팅/변동) 애니 효과
js JS - select() 메서드 - INPUT 텍스트 내용 선택 (= select메서드 = 실렉트메서드|셀렉…
js JS - 특정 배수만 입력 허용
js JS - 자동 세미콜론 삽입 (ASI : Automatic semicolon insertion) 적용되는 구…
js JS - JS링크종류 / 이동주소 숨기기 / 팝업창 크기 조절 (= 음악방송링크 창크기 지정) ★ oncli…
js JS - 유튜브 동영상 (전체재생시간/현재재생시간) 체크 ※ youtube iframe (유튜브 아이프레임)…
js JS - contentDocument 속성 - 아이프레임(iframe)에 의해 생성된 document 객체 …
js JS - contentWindow 속성 - iframe (아이프레임)에 의해 생성된 window 객체 반환 …
js JS - 최대 입력 가능한 (문자열/숫자) 길이/개수 설정 ※ 음수 부호는 카운트에서 제외
js JS - autocomplete 속성 - INPUT 텍스트 자동완성 설정/반환 (= autocomplete속…
js JS - autofocus 속성 - INPUT 텍스트 자동포커스 설정/반환 (= autofocus속성 = 오…
js JS - defaultValue 속성 - INPUT 텍스트필드의 기본값 설정/반환 (= defaultValu…
js JS - disabled 속성 - INPUT 텍스트필드 비활성화 설정/반환 (= disabled속성 = 디스…
js JS - form 속성 - INPUT 텍스트 필드 포함하는 FORM 객체 반환 (= form속성 = 폼속성)…
2/4
목록
찾아주셔서 감사합니다. Since 2012