我的页面上有一个div:
<div id='div1' style='overflow:scroll;overflow-x:hidden;max-height:200px;'></div>
我怎样才能使div滚动到div的底部??不是页面,只是DIV。
我的页面上有一个div:
<div id='div1' style='overflow:scroll;overflow-x:hidden;max-height:200px;'></div>
我怎样才能使div滚动到div的底部??不是页面,只是DIV。
当前回答
jquery的动画(版本> 2.0)
var d = $('#div1');
d.animate({ scrollTop: d.prop('scrollHeight') }, 1000);
其他回答
当页面加载时,滚动是最大的值。
这是消息框,当用户发送消息时,总是显示最新的聊天,所以滚动值总是最大的。
$('#message').scrollTop($('#message')[0].scrollHeight);
见图片
$(window).load(function() {
$("html, body").animate({ scrollTop: $(document).height() }, 1000);
});
这将获取页面的高度,并在窗口加载后向下滚动页面。一旦页面准备好,将1000更改为您需要的任何速度。
这里的其他解决方案实际上并不适用于具有大量内容的div——它“最大”滚动到div的高度(而不是div内容的高度)。所以它们可以工作,除非你有超过div高度两倍的内容在里面。
下面是正确的版本:
$('#div1').scrollTop($('#div1')[0].scrollHeight);
或jQuery 1.6+版本:
var d = $('#div1');
d.scrollTop(d.prop("scrollHeight"));
或动画:
$("#div1").animate({ scrollTop: $('#div1').prop("scrollHeight")}, 1000);
这些都不适合我,我在一个网页应用程序中有一个类似于Facebook messenger的消息系统,并希望消息出现在div的底部。
这是一个基本的Javascript。
window.onload=function () {
var objDiv = document.getElementById("MyDivElement");
objDiv.scrollTop = objDiv.scrollHeight;
}
试试这个:
$('#div1').scrollTop( $('#div1').height() )