ios 웹뷰 뒤로가기 이슈

jihyun·2025년 5월 15일

TIL

목록 보기
18/19

뒤로가기 스크롤 기억

  • ios에서 뒤로가기했을 때 부분적으로 화면이 그려지지 않는 현상 발생
  • 데이터는 정상적으로 받아오고 요소에 데이터도 잘 들어가 있는데 터치해서 스크롤하면 정상적으로 그려짐

기본 동작 scrollRestoration = "auto"
iOS Safari는 뒤로가기 할 때 페이지 전체를 다시 그리지 않고,
저장해둔 스크롤 위치와 화면 렌더 상태를 복원하는데, WebView 안에서도 동일

bfcache 복원 시 DOM은 남아 있는데 JS 실행 컨텍스트가 꼬이는 경우 발생 → 요소는 실제로 있지만 페인트가 안 됨 → 화면이 하얗게 보임

window.history.scrollRestoration = "manual"; 

뒤로가기할 때 스크롤을 자동 복원하지 않도록 적용

0개의 댓글