메뉴 건너뛰기

조회 수 7075 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

* 일반적으로는 a href="#아이디"등과 같이 사용자가 클릭을 해야하는 경우가 있는데, 이러한 경우가 아닌, 자바스크립트로 이동하는 방법을 알아보자. 이러한 경우는 페이지의 bookmark를 등록하거나 할 때 해당 위치로 이동하도록 할 때에 편리할 것이다.


: 먼저 html에 id를 준다.


<div id="bookmark"></div>


: 그리고 해당 element로 이동하고 싶을 때 아래와 같은 자바스크립트를 호출하면 된다.


location.href = "#";
location.href = "#bookmark";

: 이 방법은 아주 쉽게 <a href="#bookmark"> 의 링크/버튼을 누르지 않고 그와 같은 효과를 이끌어낼 수 있다. 하지만 url의 뒤에 #bookmark가 추가되는 불편함(?)이 있을지도 모른다. 사실, url이 그렇게 변하는 것은 미관상(?) 안 좋을수도 있지만, 백스페이스를 누르면 원래의 위치로 가는 것과 즐겨찾기를 하게 되면 해당 위치로 바로 이동이 되는 것이 어떻게 보면 페이지에 따라서는 오히려 UX를 증가시킬 수 있는 면도 있다는 것을 알아두자.


: 만약 이러한 UX적인 이점보다 주소의 미관상(?) 이득이 중요하다면 해당 element의 offset top을 구해서 해당 위치로 이동하는 방법을 사용하면 된다.


function getOffsetTop(el) {
  var top = 0;
  if (el.offsetParent) {
    do {
      top += el.offsetTop;
    } while (el = el.offsetParent);
    return [top];
  }
}
window.scroll(0, getOffsetTop(document.getElementById("bookmark")));


: 스크롤 애니메이션을 넣고 싶은 경우에도 이것을 조금 응용하면 될 것이다. jquery의 스크롤 애니메이션도 결국 이러한 소스가 밑바탕에서 돌아가고 있는 셈이기도 하다.


List of Articles
번호 제목 날짜 조회 수
187 이클립스 실행할때 자신이 원하는 JDK 지정하는 방법 file 2016.09.11 5439
186 이전, 위로 이동 2016.12.23 5740
185 이벤트 - 페이지 로드 후 이벤트 처리하기 ( window.onload ) file 2015.06.19 10871
184 이미지클릭시 옆에 큰이미지나오기 2014.03.17 5518
183 이미지에 마우스 올렸을때 확대 이미지 나오게 하기 (onmouseover 2014.03.01 6923
182 이미지나 태그정렬이 안맞을때 absmiddle 2014.03.01 5238
181 이미지 마우스 드래그로 스크롤을 움직이는 소스 2014.03.17 9357
180 이메일 체크하기 2014.03.01 5205
179 이동 가능한 레이어팝업 소스 2016.09.01 7166
178 유효한 링크인지 확인하는 JAVASCRIPT 2019.01.16 111903
177 유효성 검사, 모든 폼에 값이 입력되도록 해보자! file 2015.02.03 6123
176 유용한 스크립트 모음 2018.07.24 2293
175 월의 마지막 날짜 계산하기 2021.08.20 242
174 우클릭 금지 2016.12.23 5701
173 오브젝트 속성 2021.03.25 237
172 오늘 날짜 구하기 2018.11.07 1416
171 예제 - 자바스크립트로 현재 달의 달력 만들기 (calendar) 2015.06.19 10061
170 예제 - 이미지를 원본 크기로 볼 수 있도록 새창으로 열기 확장 (리사이징 및 이미지 드래그) file 2015.06.19 6796
169 영문, 숫자, 한글, 이메일 체크 하는 함수 2014.03.01 5292
168 연관배열 사용하기 2016.09.21 7134
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved