javascript - 最大高度过渡不起作用并且工作缓慢

标签 javascript jquery html css

我在设置 div 展开动画时遇到问题。我的 JQuery 函数执行了它应该执行的操作,但没有出现动画。我已经尝试了 transition : alltransition : max-height 但似乎都不起作用。当我想再次隐藏我的 div 时,也会发生一些非常奇怪的事情。似乎在它消失之前有某种延迟。这个延迟与动画的时间相匹配,但我不知道出了什么问题。请帮忙。

这是一个 fiddle :https://jsfiddle.net/vbqc2c27/1/

最佳答案

您不能从特定值 (0px) 到相对值 (100%) 设置动画。您需要使用特定值:

Updated fiddle

$("p").on("click",function() {
    if($("#test").css("max-height") == "0px") {
    $("#test").css("max-height","100px");
  }
    else {
    $("#test").css("max-height","0px");
  }
});

将“100%”更改为“100px”,效果很好。

当然,100 像素的段落高度不够(文本被剪裁)。因此,您可能需要添加一个函数来计算自动高度(以像素为单位)。

关于javascript - 最大高度过渡不起作用并且工作缓慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36305860/

相关文章:

javascript - 使用 jQuery 更改 schema.org 微数据?

php - 单击选项卡时如何将 sql 的结果显示到列表中?

javascript - 同一页面上的日期范围选择器的多个实例

html - 使用 CSS 仅针对 Dolphin 浏览器

html - 使用 CSS 隐藏元素的文本

javascript - 如何制作一个在最后一张图像处停止并带有重播按钮的图像 slider

javascript - 使用 Javascript 函数检索 Perl 哈希值

javascript - 使用保存的索引复制 HTML 文本

javascript - useEffect 获取 firebase 数据

javascript - MongoDB:如何根据ObjectID更新n条记录