2011-02-15 6 views
1

div의 스크롤 이벤트에 (나중에 타이머 대신 구현 됨) checkScroll 핸들러가 첨부되어 있습니다.이 핸들러는 사용자가 맨 아래에 가깝고 표시 할 데이터가 더 많은지 확인합니다. UI를 원활하고 마우스 스크롤 휠을 사용할 때 잘 작동하지만, 스크롤을 드래그하면 다음이 발생합니다무한 스크롤 스크롤 바 위치 점프

  • checkScroll 핸들러는 사용자가 바닥 근처 결정
  • (예를 들어, scrollTop 800이라고하자)
  • Ajax 요청이 스크롤 드래그 모드에있는 경우
  • 데이터 사업부
  • 로 돌아와 추가됩니다
  • 더 많은 데이터를 가져올 백그라운드에서 전송되지만, 데이터가 추가 된 이후 마우스가 이동하지 않은 스크롤바가 이제 크기가 바뀌고 약간 위로 뛰었습니다. scrollTop은 여전히 ​​800으로 설정되고 t 마우스가 어떤 방향으로 1 x 1 픽셀을 드래그하면 그 데이터가 동일한 위치
  • 에, 스크롤 마우스에서 다시 점프 모든 데이터는 사용자가 자신의 원래 위치

을 잃은, 이동했다 거기인가 이런 일이 일어나지 않도록 방지하는 방법, 트위터?

+0

예를 들어 Mac에서의 관성 스크롤에 문제가있을 수 있습니다. 스크롤바를 본질적으로 망쳐 놓고 있기 때문에 쉽게 피할 수있는 방법이 없다고 생각합니다. 나는 아직 이러한 문제가없는 표본 *을 보지 못했다. 좋은 답변을 원한다. – deceze

+0

지금까지 Firefox/PC에서 보았지만 크로스 브라우저 테스트를 시작하지 않았습니다. 나는 트위터가 그것 주위에 도착할 수 있었다는 것을 알았다. –

답변

0

이 표준 브라우저의 동작은, 파이어 폭스는 콘텐츠 점프를 만들 것입니다하지만 scrollHeight

PS 증가 할 때 크롬은 현재의 위치를 ​​유지합니다. 질문을 어떻게 무효로 처리합니까?