自动滚动到div的底部 [英] Auto-scroll to the bottom of a div
问题描述
我有一个溢出的div设置为滚动,这实质上是逐行将数据逐个流出文件。我想自动滚动到div的底部,只要流溢出,但不使用点击此处滚动到底部按钮。
I have a div with overflow set to scroll which essentially streams data line by line off a file. I'd like to scroll automatically to the bottom of the div whenever the stream overflows, but without using a "Click here to scroll to bottom" button.
我已经知道的 scrollTop = scrollHeight
解决方案,但这需要客户端的某种事件触发器。我不希望这个元素是互动的;它应该自动滚动。
I already know of the scrollTop = scrollHeight
solution, but that requires some kind of event trigger on the client's side. I don't want this element to be interactive; it should scroll by itself.
有没有什么办法可以达到这个目的?
Is there any way to achieve this?
推荐答案
我的一些旧代码使用运行示例当添加新内容时,如果用户滚动它将不会将它放在最下面。
Some old code of mine with a running example that will stay at the bottom when new content is added, if the user scrolls it will not more it to the bottom.
var chatscroll = new Object();
chatscroll.Pane =
function(scrollContainerId)
{
this.bottomThreshold = 25;
this.scrollContainerId = scrollContainerId;
}
chatscroll.Pane.prototype.activeScroll =
function()
{
var scrollDiv = document.getElementById(this.scrollContainerId);
var currentHeight = 0;
if (scrollDiv.scrollHeight > 0)
currentHeight = scrollDiv.scrollHeight;
else
if (objDiv.offsetHeight > 0)
currentHeight = scrollDiv.offsetHeight;
if (currentHeight - scrollDiv.scrollTop - ((scrollDiv.style.pixelHeight) ? scrollDiv.style.pixelHeight : scrollDiv.offsetHeight) < this.bottomThreshold)
scrollDiv.scrollTop = currentHeight;
scrollDiv = null;
}
这篇关于自动滚动到div的底部的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!