要素を展開するためにブラウザウィンドウをスクロールする最良の方法は何ですか?
-
05-07-2019 - |
質問
やりたいことは、ページ内の要素を展開するときにウィンドウを下にスクロールすることです。
私が達成しようとしている効果は、Stack Overflowコメントのようなものです。ページを超えて展開する場合は、ウィンドウ内のすべてのコメントに合わせて下にスクロールします。
これを行う最良の方法は何ですか?
編集:JQueryを使用しています。
解決
このjQueryプラグインは、私にとってはうまくいきました。 http://demos.flesler.com/jquery/scrollTo/
他のヒント
Prototypeを使用する利点がある場合は、 $(element).scrollTo()
を使用できます。
それ以外の場合、一般的な考え方は、要素の累積オフセットを計算してから、それに応じて window.scrollTop
(および window.scrollLeft
)を設定することです。
new Effect.ScrollTo('someDiv',{...some parameters...})
Prototype単体(開始前の遅延、持続時間、コールバックイベント(afterFinishなど))よりも優れた制御を提供し、他の効果や選択したものをトリガーできるようにします。急にジャンプしないでください。
ソースの次の要素が何であるかがわかっている場合は、実際にその要素に移動できます(location.href ="#...")。これは、ブラウザのネイティブの「スクロール」を使用し、ライブラリを使用しません。
大丈夫ですが完璧ではないこのコードを使用できます。 blonkmによる提案に基づく
function scrollTo( Selector ){
$(Selector).before("<a name='scroll' id='scroll'></a>");
document.location.hash = 'scroll';
$('scroll').remove();
}
これは動作するはずです。 jQueryが必要ですが、既にそれを使用していると言います。
所属していません StackOverflow