angular 1.26 버전 window.history.백()이 자동으로 위로 올라가요.

931 단어 Angular
1.26 버전에서 URL("www.example.com#xx")에서 백업을 누르면 자동으로 맨 위로 올라갑니다. 이것은angular의 기본 설정 때문입니다.
 
config에 $AnchorScrollProvider를 주입하고 이걸 뛰면 $anchorScrollProvider입니다.disableAutoScrolling();
 
이상하게도 크롬 유람기는 원래 문제가 없었는데 이번에는 기본 설정을 바꿀 필요가 없다고 생각하겠지만 크롬 유람기가 아니면 이 문제를 발견할 수 있다.
 
오류:
chrome가 window에 있습니다.history.백 시 현재 페이지 YOffeset을 바로 받아서 돌아가기 전 위치로
FF유람기는 현재 페이지 YOffset을 받지 못하지만 이전에hash를 주기 전의 위치로 돌아갈 수 있습니다.
위의 과정은 모두 원래의 위치로 돌아갈 수 있지만 페이지YOffset을 가져오는 것은 다르다.
 
원본에서 알 수 있듯이,angular는 스크롤을 맨 위로 가야 하지만, 기본값이disable로 설정되지 않았을 때, 크롬은 스크롤을 맨 위로 가야 하는데, 없습니다. (이것은 bug)
* 이 테스트는 크롬 및 Firefox에서만 수행됩니다.
 
유람기 논리
var scrollTop = window.pageYOffset|| document.documentElement.scrollTop || document.body.scrollTop;

when history back : 

chrome   event

firefox   scroll

좋은 웹페이지 즐겨찾기