質問

間の違いは次のとおりです。

$(window).scrollTop()

$(document).scrollTop()

ありがとう。

役に立ちましたか?

解決

どちらも持っています 同じ効果.

しかし、コメントで指摘されているように: $(window).scrollTop() より多くのWebブラウザーによってサポートされています よりも $('html').scrollTop().

他のヒント

まず、ウィンドウとドキュメントの違いを理解する必要があります。ウィンドウオブジェクトは、トップレベルのクライアントサイドオブジェクトです。ウィンドウオブジェクトの上には何もありません。 JavaScriptはオブジェクト指向の言語です。オブジェクトから始めて、そのプロパティまたはオブジェクトグループのプロパティにメソッドを適用します。たとえば、ドキュメントオブジェクトはウィンドウオブジェクトのオブジェクトです。ドキュメントの背景色を変更するには、ドキュメントのBGColorプロパティを設定します。

window.document.bgcolor = "red" 

あなたの質問に答えるために、ウィンドウとドキュメントのスクロールトップとの間に最終結果に違いはありません。どちらも同じ出力を与えます。

で作業例を確認してください http://jsfiddle.net/7vrvj/6/

一般的にドキュメントを使用してイベントを登録し、ウィンドウを使用して、スクロール、スクロールトップ、サイズ変更などを行います。

これを行うクロスブラウザの方法です

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

同様の問題がいくつかありました scrollTop ここで説明します。

結局、私はこれを回避しました Firefoxすなわち セレクターを使用します $('*').scrollTop(0);

効果を発揮したくない要素がある場合は完璧ではありませんが、ドキュメント、ボディ、HTML、ウィンドウの格差を回避します。それが役立つなら...

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top