[javascript] $ (window) .scrollTop () vs. $ (document) .scrollTop ()

차이점은 무엇입니까?

$(window).scrollTop()

$(document).scrollTop()

감사.



답변

그들 모두 같은 효과를 낼 것 입니다.

의견에서 지적 그러나 : $(window).scrollTop()더 많은 웹 브라우저에서 지원되는 것보다 $('html').scrollTop().


답변

첫째, 당신은 차이를 이해하는 것이 필요 window하고 document. window객체는 최상위 클라이언트 측 개체입니다. window개체 위에는 아무것도 없습니다 . JavaScript는 객체 지향 언어입니다. 객체로 시작하여 객체의 속성 또는 객체 그룹의 속성에 메소드를 적용합니다. 예를 들어, document객체는 객체의 window객체입니다. document의 배경색 을 변경하려면 documentbgcolor속성을 설정하십시오 .

window.document.bgcolor = "red" 

귀하의 질문에 대답하기 위해, 사이의 최종 결과에는 차이가 없다 window하고 document scrollTop. 둘 다 동일한 출력을 제공합니다.

http://jsfiddle.net/7VRvj/6/ 에서 실제 예제를 확인하십시오.

일반적인 사용에서 document주로 이벤트를 등록하고 사용하는 window등의 일을 scroll, scrollTop하고 resize.


답변

이 작업을 수행하는 브라우저 간 방법은

var top = ($(window).scrollTop() || $("body").scrollTop());


답변

방금 scrollTop여기 에 설명 된 것과 비슷한 문제가 있습니다.

결국 나는 선택기를 사용하여 FirefoxIE 에서이 문제를 해결했습니다.$('*').scrollTop(0);

효과를 원하지 않지만 문서, 본문, HTML 및 창 불일치 문제를 해결하는 요소가 있으면 완벽하지 않습니다. 도움이된다면 …


답변