js 페이지 가 처음 불 러 올 지 새로 고침 될 지 판단 합 니 다.

1427 단어 js나의 bug 길
1. window. name 속성 을 이용 하여 페이지 새로 고침 시 판단 을 초기 화하 지 않 습 니 다 (이 속성 이 비어 있 는 경우 사용 가능)
if(window.name == ""){
  console.log("     ");
  window.name = "isReload";  //              window.name        
}else if(window.name == "isReload"){
   console.log("     ");
}

2 sessionStorage 또는 쿠키 로 판단
window. name 구현 방법 과 유사 합 니 다. 처음 불 러 올 때 고정 값 을 설정 한 후 판단 하면 session Storage 를 예 로 들 수 있 습 니 다.
if(sessionStorage.getItem("isReload")){
     console.log("     ");
}else{
  console.log("     ");
  sessionStorage.setItem("isReload", true)
}

3. window. chrome 대상 을 사용 할 수 있 습 니 다. (이 방법 은 구 글 브 라 우 저 에서 만 다른 브 라 우 저 를 사용 할 수 있 습 니 다. chrome 대상 이 없습니다)
이 대상 은 loadtimes () 방법 을 제공 합 니 다. 이 방법 을 실행 하면 페이지 성능 에 관 한 대상 중 하 나 를 얻 을 수 있 습 니 다. navigation Type 속성 은 페이지 를 불 러 올 지 새로 고 칠 지 두 개의 값 이 있 는 Reload (새로 고침) 와 Other (첫 로 딩) 를 판단 할 수 있 기 때문에 if 를 통 해 판단 할 수 있 습 니 다.
if (window.chrome.loadTimes().navigationType == "Reload") {
  console.log("     ")
}else{
  console.log("     ")
}

window. chrome. loadtime 방법 을 사용 하면 공식 적 으로 이 방법 이 버 려 졌 다 고 경고 합 니 다. 표준 화 된 API: Navigation 의 모든 위 코드 를 변경 해 야 합 니 다.
if (window.performance.navigation.type == 1) {
  console.log("     ")
}else{
  console.log("     ")
}

좋은 웹페이지 즐겨찾기