jquery动画到min-height或auto

mrp*_*atg 9 jquery

我在这里有一些jquery的东西来点击动画一层.问题有时内容可能超过高度设置中分配的高度.有没有办法修改它来将图层设置为最小高度或自动而不是设置px金额?

$(function() {
    $(".showcart").click(function(){
        $("#cart").animate({ height: "250px" }).animate({ height: "200px" }, "fast");
    });
    $(".hidecart").click(function(){
        $("#cart").animate({ height: "250px" }).animate({ height: "0px"}, "fast");
    });
});
Run Code Online (Sandbox Code Playgroud)

Rec*_*cur 22

我发现你可以这样做:

 $("#cart").animate({ 'min-height': "250px" }, 'fast');
Run Code Online (Sandbox Code Playgroud)

行情是关键.

  • 作品!应该是最好的答案. (4认同)

fyj*_*ham 3

不幸的是,不,你不能告诉它只为适合的动画。为此,您要么必须知道正确的尺寸,要么有计算它的方法。

如果这一切都发生在单个函数或单个插件中,您可能需要考虑$(this).height()在扩展变量之前将变量的值存储在某个地方,因此您可以将其放回原来的位置。

否则,一种可能性可能是将一个 div 放在您想要增大/缩小的 div 内,并使用它get $('> div', $(this)).height()来获取其中的 div 的高度,该高度应该是其中内容的高度,无论您与外部 div 的干扰程度如何高度。