コンテンツに使用される内部 DIV を含む HTML ページがあります。内部 DIV には独自のスクロールバーがあります。DIV の特定の位置に自動的にスクロールしたいと思います。
これどうやってするの?(ウィンドウのスクロールバーを自動スクロールしたくないことに注意してください-これを行う方法はすでに知っています)
クロスプラットフォーム ソリューションが必要
div には、scrollTop
設定できるプロパティ (およびその仲間scrollLeft
) があります。
JavaScript が受け入れられる限り、 .id内の既知の要素を使用するjQuery を使用してデモをdiv
作成しました。
$(function() {
var testOffset = $('#test').offset(),
scrollOffset = $('#scroll').offset();
$('#scroll').scrollTop(testOffset.top - scrollOffset.top);
});
特定の要素ではなく、ピクセル単位でどれだけ離れているかがわからない場合は、次のように適応できます。
$(function() {
$('#scroll').scrollTop(100);
});
.scrollTo()
div をスクロールするのに役立つこのメソッドがあります。詳しくはこちらをご覧ください
div (スクロールしたい場所) を追加します。
<div id="#scroll-here">Test..</div>
次のようなリンクを追加します。
<a href="#scroll-here">Scroll to Test</a>
スムーズなスクロールが必要な場合は、これをチェックできます
scrollTojQueryプラグインをご覧になることをお勧めします。これは、任意の要素内でスクロールをアニメーション化できる非常に便利なプラグインです。jsFiddleで、それがどのように機能するかを示す小さな例を設定しました。p
この例は、最初の3番目、div
次に2番目p
の2番目を「スクロール」する方法を示していますdiv
。注目に値することの1つは、position().top
が正しいことを確認するために、を含むdiv
ように設定する必要があるということposition: relative;
です。うまくいけば、これはそれほど問題ではありません。:)