1

我制作了一个脚本,将内容动态加载到 div 中,每当内容使 div 的高度变大或变小时,它都会将高度设置为实际高度。

问题是它不仅向上/向下滑动,而且总是向上滑动一点,然后向下滑动到所需的高度。

我想让它直接在所需的高度滑动而没有“弹跳”。

这是脚本的一部分: main_content.html(html);

main_content.css("height", "auto");
var newContentHeight = main_content.height();
loader_div.hide();
main_content.height(prevContentHeight);
main_content.fadeIn("fast", function() {
    main_content.animate({
        "height": newContentHeight
        }, 300);
    });

该脚本有效,唯一的问题是动画不会将 div 向上或向下滑动到所需的高度,它总是将其向上滑动一点,然后再向下滑动到所需的高度。

使用动画高度时是某种想要的动画还是有什么问题?谢谢

编辑:控制台记录 newContentHeight(div 的最终高度)它看起来像收集了 2 个高度,然后动画首先到达其中一个高度,然后到达另一个高度,这就是它看起来像弹跳的原因。正在努力。

编辑2:是的,问题肯定存在,我清理了所有代码,一切正常,除了我使用console.log从newContentHeight获取2个属性看起来隐藏的内容div有2个高度,这2个高度传递给.animate 这就是它先升后降的原因……有点奇怪

4

2 回答 2

1

我认为问题不是脚本,而是运行脚本的系统。更换时间要慢一点

main_content.animate({
"height": newContentHeight
}, 3000);
于 2012-04-06T12:40:41.707 回答
1

无法解决问题,我修改了下面的脚本,现在一切正常。 http://css-tricks.com/dynamic-page-replacing-content/ 它具有我正在寻找的确切动画(除了几个易于实施的步骤)。

于 2012-04-08T15:31:15.597 回答