URL 이동
페이지 이동/새로고침 방식은 아래와 같이 가능하다.
! 아래에서 window. 은 생략 가능함
## 새 페이지로 이동하기
window.location.href = "http://www.example.com"; // assign 과 href 는 똑같다
window.location.href(link); // (X) 예전 IE에서만 동작함, 사용하지 말것
window.location.assign("http://www.example.com");
window.location.replace('http://example.com/'); // 현재페이지가 바뀌는 것이므로 history.back() 으로 이동할 수 없음
## 현재 페이지 새로고침
window.location.reload(true); // 강력하고 강제적인 다시읽기, Ctrl+F5와 같음, 무조건 서버에서 읽음
window.location.reload(); // POST 데이터를 포함하여 새로고침, reload(false), F5와 같음, 캐시먼저읽음
window.location.history.go(0); // 부드럽고 소극적인 다시읽기, 양식 초기화가 잘 안됨
window.location.href = window.location.href; //URL에 해시(#)태그가 있으면 다시로드되지 않음
window.location.href = ''; // iOS시뮬레이터에서 AngularJS를 사용할 때 매우 유용함
## 이전 페이지
window.histroy.go(-1); // 이전 페이지... 즉 한단계 뒤로 돌아가기
window.histroy.go(-3); // 세단계 이전의 페이지로 이동
window.history.back(); // history.go(-1)과 동일한 기능을 구현하나 go(-1)이 보편적으로 사용됨
## 다음 페이지
window.histroy.go(1); // 다음 페이지... 즉 한단계 앞으로 이동
window.history.forward(); // history.go(1)과 동일하며 앞으로 이동
페이지를 이동하지 않고 URL 정보만 가져오기
방문했던 마지막 페이지의 정보를 가져올 수 있으며 아래와 같음
document.referrer
단, 보안 및 프라이버시 사유로 마지막 페이지 주소만 가져올 수 있으며 그 이전의 정보들은 가져올 수 없음. 만약 반드시 필요하다면 쿠키 등을 사용한 로컬 저장소를 사용해야함... 아니면 서버 세션을 이용할 수도 있음.
'프론트엔드 개발 놀이터 > Javascript' 카테고리의 다른 글
javascript fetch 를 이용한 ajax 통신 및 주의점 (0) | 2020.01.16 |
---|---|
문서의 로드시점 - onload, $(window).load(); (0) | 2020.01.15 |
바닐라스크립트에서 selector 사용법 (0) | 2020.01.15 |
바닐라스크립트에서 이벤트 리스너 - $().on("click",..); (0) | 2020.01.15 |
URL에서 값 가져오기 (1) | 2020.01.14 |