jQuery を使用してページ上の特定の場所までスクロールすることは可能ですか?
スクロール先の場所には以下が必要ですか?
<a name="#123">here</a>
それとも、特定の DOM ID に移動するだけでいいのでしょうか?
ベストアンサー1
jQuery スクロール プラグイン
これはタグ付きの質問なのでjQueryのこのライブラリにはスムーズなスクロールのための非常に優れたプラグインがあり、ここから見つけることができます:http://plugins.jquery.com/scrollTo/
ドキュメントからの抜粋:
$('div.pane').scrollTo(...);//all divs w/class pane
または
$.scrollTo(...);//the plugin will take care of this
スクロール用のカスタム jQuery 関数
非常に軽量アプローチカスタムスクロールjQuery関数を定義することによって
$.fn.scrollView = function () {
return this.each(function () {
$('html, body').animate({
scrollTop: $(this).offset().top
}, 1000);
});
}
次のように使用します:
$('#your-div').scrollView();
ページ座標までスクロール
または属性を持つ要素html
をアニメーション化するbody
scrollTop
scrollLeft
$('html, body').animate({
scrollTop: 0,
scrollLeft: 300
}, 1000);
プレーンなJavaScript
スクロールしてwindow.scroll
window.scroll(horizontalOffset, verticalOffset);
要約すると、IDを持つ要素にジャンプするにはwindow.location.hashを使用します
window.location.hash = '#your-page-element';
HTML で直接 (アクセシビリティの強化)
<a href="#your-page-element">Jump to ID</a>
<div id="your-page-element">
will jump here
</div>