현재 페이지 번호를 URL 매개변수로 추가

Web Development assistant·2023년 12월 22일
0

# javascript

목록 보기
33/36
window.onload = function () {
  // 현재 페이지 번호 가져오기
  var currentPageNumber = getCurrentPageNumber();

  // 새로 고침 버튼 또는 다른 새로 고침 이벤트에 대한 이벤트 핸들러 등록
  window.addEventListener('beforeunload', function () {
    // 현재 페이지 번호를 URL에 추가
    var newUrl = updateUrlWithPageNumber(currentPageNumber);
    // 브라우저에 새로운 URL을 설정하여 새로 고침 시 페이지 번호를 유지
    history.replaceState(null, null, newUrl);
  });
};

// URL을 업데이트하여 페이지 번호를 추가하는 함수
function updateUrlWithPageNumber(pageNumber) {
  // 현재 URL 가져오기
  var currentUrl = window.location.href;

  // URL에 이미 페이지 번호가 있는지 확인
  var regex = /(\?|&)page=\d+/;
  var hasPageNumber = regex.test(currentUrl);

  if (hasPageNumber) {
    // 이미 페이지 번호가 있다면 갱신
    return currentUrl.replace(regex, '$1page=' + pageNumber);
  } else {
    // 페이지 번호가 없다면 추가
    return currentUrl + (currentUrl.indexOf('?') !== -1 ? '&' : '?') + 'page=' + pageNumber;
  }
}

0개의 댓글