jQueryのscrollTopで、どんなにスクロールしても0を取得してしまいます。


$('body').scrollTop();
で取得を試みてます。

ちなみに、Google Blogger内で実装しております。
原因は分かりますでしょうか?

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2011/10/17 11:30:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:windofjuly No.1

回答回数2625ベストアンサー獲得回数1149

ポイント34pt

第一候補

$('html').scrollTop();

safariでは通用しないので第二候補、第三候補

$(window).scrollTop();
$(document).scrollTop();

詳しくまとめておられる人がおられるので見ておくといいかも

http://d.hatena.ne.jp/cyokodog/20090112/jQueryPositionSize03

id:Cherenkov No.2

回答回数1504ベストアンサー獲得回数493

ポイント33pt

ページ中の現在のスクロール位置を取得したいのでしょうか?

$('html, body').scrollTop();

こうやるようです。


逆引きjQuery:ページのスクロール位置を取得/設定するには? - @IT

id:Cherenkov No.3

回答回数1504ベストアンサー獲得回数493

ポイント33pt

スクロール位置ならこれでいいです。

alert(window.scrollY)

scrollY - MDN

  • id:makocan
    頂いた物は全て試しております。
  • id:rouge_2008
    既に回答されている「$(window).scrollTop();」および「$(document).scrollTop()」で、IE 9、Firefox 3.6.x、Google Chrome 14(すべてWin)で取得できていますが、どのような環境(OS、ブラウザ)で実行していますか?
    あと、どのようなイベントで取得を実行しているでしょうか?

    http://blog.alt-scape.com/archives/266
    ※上記はjQueryではありませんが、同じ問題があるようです。
  • id:rouge_2008
    「$('html, body').scrollTop();」では、ブラウザの表示モードの他に、jQueryのバージョンによっても動作が異なりました。
    バージョン1.3.2以降でしたら同じ動作になるようです。(ブラウザの表示モードによる違いはあります。)
    新しいバージョンを使用しているかも知れませんが・・・

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません