我有一个固定尺寸的 div,一些 JavaScript 函数将随着时间的推移将文本放入其中。当文本量超过框的高度时,由于overflow:scroll 会出现一个滚动条。
新问题是随着更多内容的出现,进入 div 的视图会停留在同一位置。我的意思是,随着更多内容出现在下方,它会在任何地方保持滚动,除非您手动向下滚动,否则它会被隐藏。我想让它在出现新内容时自动滚动到底部,以便用户自然地看到最近出现的内容而不是最旧的内容。
想法?
我有一个固定尺寸的 div,一些 JavaScript 函数将随着时间的推移将文本放入其中。当文本量超过框的高度时,由于overflow:scroll 会出现一个滚动条。
新问题是随着更多内容的出现,进入 div 的视图会停留在同一位置。我的意思是,随着更多内容出现在下方,它会在任何地方保持滚动,除非您手动向下滚动,否则它会被隐藏。我想让它在出现新内容时自动滚动到底部,以便用户自然地看到最近出现的内容而不是最旧的内容。
想法?
您可以scrollTop
在每次添加文本后使用方法:
$("div").scrollTop($("div").children().height());
使用内部块获得真实高度。
演示:http: //jsfiddle.net/eyY5k/1/
我发现这种方法可以满足我的需求:
var realHeight = $("#history")[0].scrollHeight;
$("#history").scrollTop(realHeight);
请注意,这使用了 jquery。