개발/Front-End
[에러 노트] Window.scrollTo({ behavior: 'smooth' })가 동작하지 않아요.
ywwwon01
2025. 5. 21. 15:46
1. 문제 상황
과거의 프로젝트를 리팩토링 해보려고 오랜만에 열어본 참이었습니다.
아니.. 그런데 말이죠
만족스럽게 동작하던 스크롤 이벤트가 제대로 동작하지 않는 것이 아니겠습니까??
정확히는.. 스크롤을 이동시키는 것까지는 잘 해주는데,
{ behavior: 'smooth' }가 적용되지 않은 모습이었습니다.
✅ 의도한대로 동작하는 모습 ✅ | ❌ 문제 관측 상황 ❌ |
![]() |
![]() |
2. 해결
https://stackoverflow.com/questions/62098093/scroll-behaviour-smooth-not-working-at-all
아마 저와 같은 문제를 겪으신 모양입니다..
그리고 제가 시도한 부분은 바로 이것
Windows 설정 > 접근성 > 애니메이션 효과를 살펴봐야 했습니다.
이게 꺼져있더군요^^
켬 으로 전환하니 잘 동작했습니다.
3. 원인 분석
원인을 파악하기 위해서 어떤 조건 때문에 이게 갑자기 작동하지 않게 된 것인지 확인해 보고자
시크릿 탭에서도 실행해보고, 다른 브라우저에서도 실행해보았습니다.
- Chrome 시크릿 탭: 여전히 smooth가 적용되지 않고 scroll 이동만 됨
- 네이버 웨일: 의도한대로 동작함 (smooth가 적용됨!)
아.. 그래서
이건 크롬이 업데이트 되면서 뭔가 됐나보다.. 라고 추측하게 되었습니다.
(근데.. 아니었던거죠^^)
아니. 근데 그럼 말이죠
전에는(적어도 24년 2월 전에는) 왜 됐던건데요?
네이버 웨일에서는 왜 여전히 동작하는건데요?!
라는 것을 생각하며 아래의 생쇼를 펼치게 된 것인데요. (ㅋ)
- 크롬 확장 프로그램과 충돌이 일어났나?
- 아니!! 그랬으면 시크릿 모드에서는 잘 됐어야 했다.
- 크롬 정책이 업데이트 됐나?
- 브라우저가 시스템 설정을 엄격하게 적용하도록 정책이 업데이트 됐다든지? → 일리가 있지 않나요?
- 그래서 이 추측을 거의 확신한 채로(ㅋ) 관련 문서를 찾아보았지만..
- 그런 문서는 찾을 수 없었다. (ㅋ)
- 이건 찾을 수 있었다: Chrome에서 Smooth Scrolling 기능이 공식적으로 도입된 시점은 Chrome 49 버전부터 이다.. (v49는 2016년 2월에 업뎃된 버전이다..)
- (그렇다면 남은 것은..) 내가 언젠가 스스로 Windows의 애니메이션 설정을 껐나보다^^..
- 이것밖에 없습니다 진짜
- 그러고보니 기억이 나는 것 같네요.. 제가 시스템 속도 향상시킨다고 바꿨던 것 같습니다^^
전에는(적어도 24년 2월 전에는) 왜 됐던건데요?
- 내가 그 때는 애니메이션 설정을 안 건드렸던 때니까..;;
네이버 웨일에서는 왜 여전히 동작하는건데요?!
- (추측) 네이버 웨일은 크롬과는 다르게, Windows 설정보다 브라우저의 설정을 우선으로 취급한다든지.. 브라우저 차원에서 애니메이션을 off 하는 기능이 없다든지.. 그런 이유일 것 같습니다.
헛된 짓거리를 한 것 같은 기분이지만..
공부하는 과정이 다 그런 것 아니겠나요?
아..^^
(아무튼)
별개로, 브라우저가 사용자의 설정을 엄격히 따르도록 설계되어 있는 점은 접근성 측면에서 참 납득이 되는 설계였습니다.
이상입니다.