引数を設定しない場合は、jQueryオブジェクトで指定した要素のスクロール位置(Y座標)を取得します。スクロールができないケースでは0を返します。引数を設定した場合はjQueryオブジェクトで指定した要素のスクロール位置(Y座標)を設定します。ブラウザーのスクロール以外にも、cssのオーバーフロー設定によるスクロールも取得/設定できます。解説スクロール位置を取得しますサンプル(scrollTop/01.html)を開いてbody内にdiv要素が1つあることを確認して下さい。このdiv要素にはcss設定でオーバーフローの設定がされ、スクロールバーが表示されます。textメソッドを利用してp要素に表示します。st);});結果として、div要素のスクロール量に応じて数値が表示されます。ブラウザのスクロール位置を取得しますセレクタに「window」を利用することで、ブラウザのスクロール位置も取得できます。サンプル(scrollTop/02.html)を開いてbody内の構成を確認してください。ブラウザがスクロールできるように大きなdiv要素が10個あります。スクリール位置を表示するために、位置を固定したdiv要素(injのid属性のdiv)を用意しました。textメソッドを利用して固定したdiv要素に表示します。st);});結果として、ブラウザのスクロールに応じてスクロール位置が表示されます。スクロール位置を設定しますサンプル(scrollTop/03.html)を開いてbody内の構成がscrollTop/01.htmlと同じ事を確認してください。jQueryは以下の様に記述され、buttonをクリックするとdiv要素のスクロール位置が0(つまり最上部)に移動するようにしました。$("button").click(function(){$("div").scrollTop(0);});結果として、div要素を適当にスクロールした後でbuttonをクリックするとスクロールが最上部に戻ります。ブラウザのスクロール位置を設定しますサンプル(scrollTop/04.html)を開いてbody内にdiv要素が10個あるのを確認してください。offsetメソッドによってクリックされたdiv要素(this)の位置を取得します。取得した位置をscrollTopメソッドに利用することで、ブラウザのスクロール位置を移動します(セレクタにはwindowを利用します)。$(this).offset().top;$(window).scrollTop(targetY);});結果として、クリックしたdiv要素がブラウザの上端に位置するような場所に移動します。animateメソッドを利用してアニメで移動するサンプルを作成しました。サンプル(scrollTop/05.html)を開いてbody内の構成がscrollTop/04.htmlと同じ事を確認してください。jQueryは以下の様に変更され、アニメでscrollTopの位置をtargetYに移動させます。$(this).offset().top;$("html,body").animate({scrollTop:targetY});});結果として、クリックしたdiv要素がブラウザの上端に位置するような場所にアニメで移動します。animateメソッドではセレクタにwindowを利用していません。この理由については以下の「メモ」を確認してください。scrollLeftメソッドを利用します。animateメソッドのセレクタにhtmlとbodyの2つを設定しています。以前はbodyだけでしたが、その場合IE7で機能しませんでした。以前、検証したことがあるのですが、そのときはIE8までしか検証していなかったため気が付きませんでした。animateメソッドでは機能しません。サンプル(scrollTop/test01.html)やサンプル(scrollTop/test01b.html)は、ほとんどscrollTop/05.htmlと同じですが、セレクタをwindowやdocumentに変更しました。$(this).offset().top;$(document).animate({scrollTop:targetY});});両方のサンプルともdiv要素をクリックしても機能しないことを確認してください。animateメソッドではセレクタにwindowやdocumentを利用できないようです。