ページの読み込み後に自動スクロールするように、Webページにコードを実装しようとしています。 JavaScript関数を使用して自動スクロールを実行し、ページが読み込まれたときに関数を呼び出しましたが、ページはまだスムーズにスクロールしていません。ページをスムーズに自動スクロールする方法はありますか?
これが私のJavaScript関数です:
function pageScroll() {
window.scrollBy(0,50); // horizontal and vertical scroll increments
scrolldelay = setTimeout('pageScroll()',100); // scrolls every 100 milliseconds
}
100ミリ秒ごとにスクロールが50ずつ増えるため、スムーズではありません。
これとスクロールする量を小さい数値に変更して、関数がより「スムーズ」であるかのような錯覚で実行できるようにします。
これを速くしたり遅くしたりするには、速度の値を下げます。
function pageScroll() {
window.scrollBy(0,1);
scrolldelay = setTimeout(pageScroll,10);
}
はるかにスムーズに表示されます。試してください;)
JQueryと次のコードを使用してみてください。
$(document).ready(function(){
$('body,html').animate({scrollTop: 156}, 800);
});
156-ページの上から(px)までスクロールします。
800-スクロール時間(ミリ秒)
スムーズに実行されるアニメーションは、クライアントマシンによって異なります。どれだけ公平にコーディングしても、128 MBのRAMシステムでアニメーションを実行する方法に満足することはできません。
JQueryを使用してスクロールする方法は次のとおりです。
$(document).scrollTop("50");
AutoScroll Plugin を試してみることもできます。
これを行うには、jfunc
関数を使用できます。使用する jFunc_ScrollPageDown
およびjFunc_ScrollPageUp
関数。 http://jfunc.com/jFunc-Functions.aspx 。
スムーズにスクロールする jQuery ScrollTo プラグインのソースコードを確認することをお勧めします。または、独自の関数をロールするのではなく、プラグインを使用することもできます。
質問に「jquery」というタグを付けたので、.animate()
のようなものを試してみませんか?この特定のjquery関数は、数値のCSSプロパティやスクロール位置など、あらゆる種類のプロパティをスムーズにアニメーション化するように設計されています。