7

ページの下部にある div があります。

<div id="myDiv"></div>

JS 関数を実行した後、この div に移動したいと思います。つまり、自分の URLmyurl#myDivを div に移動したいのです。ただし、ページをリロードせずに。JavaScriptを使用してこれを行うにはどうすればよいですか? 残念ながら、この問題の実用的な解決策は見つかりませんでした。私はJSライブラリとフレームワークを使用していません。

4

3 に答える 3

31

特定の要素までスクロールするには、IE6+ および実際のブラウザーでサポートされているscrollIntoViewを使用します。

document.getElementById('myDiv').scrollIntoView();

window.location.hashDOMReady をチェックして、ドキュメント内の要素に一致する URL にハッシュがあるかどうかを確認します。

#myDivドキュメント内にリンクがある場合はonclick、それらにリスナーを追加し、上記のコードに従って手動でスクロールを実行し、return falseへのリンクをたどらないようにする必要があります#myDiv

デモ

于 2012-09-05T14:07:12.200 に答える
11

ウィンドウの位置を ID の位置に設定してみてください。ブラウザはその要素までスクロールします。

window.location.hash = '#myDiv';
于 2012-09-05T14:07:47.153 に答える
3

scrollIntoView(true)メソッドは、上 (true) または下 (false) に配置するかどうかを指定するパラメーターも受け入れます。

于 2012-09-05T14:12:13.277 に答える