32

これに関して別の質問があるかどうかわからない場合は、申し訳ありませんが、猟犬を解放しないでください。

html5 doctypeを使用し、scrollTop()値の値を教えてくれるスクロールリスナーから簡単なconsole.logを実行します。私は基本的にこれを行っているので、ポイントを超えてスクロールすると、要素の不透明度を変更します。私はMVSソリューションを使用してこれを行っていますが、これを外部サイトにプッシュして確認することはできません。簡単なスニペットは次のとおりです。

var opacity = 1;
var scrollTop = $('body').scrollTop();
if (scrollTop > 200) {
   opacity = 0.1;
}
$('#element).css('opacity', opacity);

Chromeでスクロールすると、console.log(scrollTop);が表示されます。必要なものを表示し(つまり、スクロールごとに100)、200のscrollTopを押すと不透明度が消えます。FFおよびIE7+でスクロールすると、varはスクロールごとに「0」を返します。$('body')。scrollTop()を$('document')。scrollTop();に変更した場合 次に、スクロール時に「null」の戻り値が返されます。

何か案は?ありがとう!

4

4 に答える 4

41

使ってみてvar scrollTop = $(document).scrollTop();

于 2012-10-17T18:57:00.493 に答える
17

$(window).scrollTop()Firefox と Chrome の両方で期待どおりに動作します。

検証のために、chrome と Firefox の両方で次の jsfiddle を実行します: http://jsfiddle.net/RBBw5/6/

于 2012-10-17T19:01:37.077 に答える
1

IE9 の互換モードに不満を感じた後$('body').scrollTop()、IE9、Chrome 32、および Firefox 26 で確実に動作することを発見しました。

于 2014-02-02T12:41:49.153 に答える