我有<div>
,其属性为scroll:auto
。当文本添加到<div>
并且高度超过默认高度时,我必须向下滚动才能看到添加的最新文本行。我希望最新的文本行始终可见。如果我能做到这一点,我可以使用scroll:none而不是auto。我怎样才能做到这一点?我希望你明白我的意思。
更新: BilgehanKorkmaz的解决方案有效,但过了一段时间。如果我输入大量文本,则滚动不再起作用。
答案 0 :(得分:1)
编辑:将滚动高度值设置为.scrollTop():
$("div").scrollTop($("div").get(0).scrollHeight);
答案 1 :(得分:0)
您已尝试height:auto;
?我不太了解,所以..如果可能的话,在JSFiddle
答案 2 :(得分:0)
使用.position().top
获取新元素的位置,并使用scrollTop
滚动到正确的位置:
var myDiv = $("#myID");
$("button").click(function(){
var newelementtext = "<p>Your element</p>";
var el = $(newp).appendTo(myDiv);
myDiv.scrollTop(el.position().top);
});