私のコードはhereです。私がやろうとしている何スクロールバーの位置に基づいてdivのスクロール位置を維持する
setInterval(
function (data){
var alreadyScrolled = $("#smallBox").height() >= $("#smallBox").get()[0].scrollHeight;
$("#smallBox").append(data + "<br />");
if (alreadyScrolled) {
$("#smallBox").scrollTop($("#smallBox").heightoffsetHeight)
}
},
1000,
Date()
);
<div id="largeBox">
<div id="smallBox">
</div>
<input />
</div>
は、スクロールバーがウィンドウの下部にあり、それがある場合は、一番下までスクロールバック、その後、div要素に新しいデータを追加するかどうかを検出、です。スクロールがまだ最下部にない場合は、何もしないでください。
私はこれを達成するために使用できるDOMやjquery APIのどちらの部分がわからないのですか?私は複数のことを試してきましたが、ややこしてここに詰まっています。スクロールバーは、どのくらいスクロールすることができます。もし私がそれを得ることができれば、パーセント値は素晴らしいだろう。
jQuery以外のライブラリを使用したくないということは、プラグインもないことを意味します。
私はSOのチャットルームで見られるのと同じ振る舞いをしたいと思っていますが、それはScrollToプラグインを使っていることを除いているようです。
私はちょうど.height()と.scrollTopを使うことはできませんが、それらは一致しません。
この参照: http://jsfiddle.net/qSx3M/6/
右は、スクロールバーがピクセルで表示されている場所を示していますが、下に表示されている場合は表示されません。 – Incognito
これは簡単なことです(scrollVal == document.getElementById(DivID).style.height) –