0

JQUERY,具有固定高度(带有滚动条)的div如何制作动画,直到它增长到不再需要滚动条?

我在页面上有一个 div,其 CSS height:200px 设置,这使得 DIV 有一个垂直滚动条,允许用户滚动浏览一堆文本。

我想为 DIV 设置动画以扩展高度,直到显示 div 中的所有内容,这意味着不再有滚动条

我尝试了以下方法:

$("#view-container").animate({"height": "auto"}, "slow");

但这不起作用:

$("#view-container").animate({"height": "1000px"}, "slow");

问题在于 DIV 中的文本大小是可变的。想法?

谢谢

4

1 回答 1

3

你可以做什么:

将高度设置为auto,然后记录offsetHeight。立即将高度更改回原来的高度 - 由于浏览器是单线程的,因此用户根本看不到更改。

然后使用 jQuery(或不使用)动画到记录的高度。

例子:

var vc = document.getElementById('view-container');
var vcold = vc.style.height;
vc.style.height = 'auto';
var vcheight = vc.offsetHeight;
vc.style.height = vcold;
$("#view-container").animate({"height": vcheight + "px"}, "slow");
于 2010-05-30T04:43:52.380 回答