設定変数にスクロールできないようですが、正しい構文を使用していますか?scrollTopがスクロールしない
var offset = $(".box", this).offset().top;
$(window).animate({scrollTop:offset}, 500);
設定変数にスクロールできないようですが、正しい構文を使用していますか?scrollTopがスクロールしない
var offset = $(".box", this).offset().top;
$(window).animate({scrollTop:offset}, 500);
あなたはをスクロールすることはできません。ウィンドウスコーリングをアニメートすることはできません(カトーに感謝します)。これを試してみてください:window
var offset = $(".box", this).offset().top;
$("html,body").animate({scrollTop:offset}, 500);
次はIEと他のブラウザの両方で動作します。
offset()。topはドキュメントに対する相対的な距離です。したがって、ドキュメントがすべてスクロールされている場合、アニメーションは正確ではありません。
$( "body")。アニメーション({scrollTop:offset + $( "body")scrollTop()}、500);
を参照してください。いいえ、jQuery offset()は、ドキュメント、スクロール位置に関係なく。 –
あなたの場合、それは同じことです。オフセット+スクロールトップ===位置。しかし、ポジションはオフコースクリーナーです:-) – terjeto
私は最終的に位置を使用していた()ではなく
var offset = item.position().top;
$("html, body").animate({scrollTop:offset}, 500);
をオフセットとドキュメントを読むことによって、クロスブラウザ
のために$(「HTML、ボディー」)を使用することをお勧めしますコメントによって提案されました
$(ウィンドウ).scrollTop()[正常に動作](http://jsfiddle.net/katowulf/w43T6/)。ウィンドウのスクロールをアニメートできないと言ったのですか? – Kato
@Kato:私は訂正しました。はい、私はウィンドウのスクロールをアニメートできないと言っていました。一定。 ;) –
私はアニメーションのアプローチを試したことがないので、お勧めします。私はhtml、ボディソリューションが好きです(実際のブラウザで2回アニメーション化していますか?ダブルコールを避けるためにブラウザを盗聴する価値がありますか?) – Kato