回答:
var myDiv = document.getElementById('containerDiv');
myDiv.innerHTML = variableLongText;
myDiv.scrollTop = 0;
scrollTop
属性を参照してください。
スムーズなアニメーションでそれを行う別の方法は次のとおりです
$("#containerDiv").animate({ scrollTop: 0 }, "fast");
slow
。非常に低速です。
slow
2番目の引数として渡す代わりに。アニメーションを完了するためのミリ秒数になる整数を渡すことができます。
私はこの質問に対する既存の回答を試しましたが、どれも私のためにChromeで動作しませんでした。何が機能したかは少し異なりました:
$('body, html, #containerDiv').scrollTop(0);
scrollTo
window.scrollTo(0, 0);
ウィンドウを上にスクロールするための究極のソリューションです-最良の部分は、IDセレクターを必要としないことです。IFRAME構造を使用しても、非常にうまく機能します。
scrollTo()メソッドは、ドキュメントを指定された座標までスクロールします。
window.scrollTo(xpos、ypos);
xpos番号が必要です。x軸(水平)に沿ってスクロールする座標(ピクセル単位)
。ypos数値必須。Y軸(垂直)に沿ってスクロールする座標(ピクセル単位)
jQuery
同じことをする別のオプションはjQueryを使用することであり、それは同じもののためのより滑らかな外観を与えるでしょう
$('html,body').animate({scrollTop: 0}, 100);
ここで、scrollTopの後の0はピクセル内の垂直スクロールバーの位置を指定し、2番目のパラメーターはオプションのパラメーターで、タスクを完了するまでの時間をマイクロ秒単位で示します。
document.getElementById('scroller').scrollTo(0,0)
これは私のために働きました:
document.getElementById('yourDivID').scrollIntoView();
document.getElementById("yourDivID").scrollIntoView({behavior: "smooth", block: "start", inline: "nearest"})
scollIntoView
スクロールする要素で呼び出す場合にのみ機能することに注意してください。つまり、スクロールする要素ではなく、スクロールする要素で呼び出します。
それでもこの作業ができない場合は、jQuery関数を使用する前に、オーバーフローした要素が表示されていることを確認してください。
例:
$('#elem').show();
$('#elem').scrollTop(0);
FrançoisNoëlの回答によると、「まだこの作業を行うことができない場合は、jQuery関数を使用する前に、オーバーフローした要素が表示されていることを確認してください。」
私はブートストラップモーダルで作業していましたが、y次元でオーバーフローするdivでアカウント権限を繰り返し提示していました。私の問題は、jquery .scrollTop(0)関数を使用しようとしていましたが、どのように実行しようとしても機能しませんでした。モーダルがアニメーションを停止するまでスクロールバーをリセットしないイベントをモーダル用にセットアップする必要がありました。最終的に私のために働いたコードはここにあります:
$('#add-modal').on('shown.bs.modal', function (e) {
$('div.border').scrollTop(0);
});
これらの2つのコードは私にとって魅力のように機能しました。最初にページの上部にスクロールするのにかかりますが、特定のdivにスクロールしたい場合は、div idで2番目のコードを使用します。
$('body, html, #containerDiv').scrollTop(0);
document.getElementById('yourDivID').scrollIntoView();
クラス名でスクロールしたい場合は、以下のコードを使用してください
var $container = $("html,body");
var $scrollTo = $('.main-content');
$container.animate({scrollTop: $scrollTo.offset().top - $container.offset().top + $container.scrollTop(), scrollLeft: 0},300);
IDには、オーバーフローcssプロパティを持つ対応するdivのIDが必要です。
document.querySelector('#YOUR_OVERFLOWED_DIV').scrollTop = 0;