下面的小提琴包含负责扩展可折叠菜单的代码。它类似于Bootstrap的Collapse组件。以下是它的工作原理:
菜单最初隐藏在 .display: none
display: none
被删除,使菜单可见,以便我们可以检索和存储其当前高度以供以后使用。
该菜单被赋予为该属性配置的 CSS 属性,该属性现在设置为 。transition
height
0
菜单的 设置为我们在步骤 2 中检索到的值。height
转换结束后,事件处理程序应启动。transitionend
尽管菜单会扩展到预期的高度,但它无需我们进行转换即可实现此目的。我需要你的帮助来找出原因。
在这里,试试吧:https://jsfiddle.net/avkdb89j/3/
一个重要的观察结果:如果打开检查器工具,选择(菜单)并切换代码在您单击按钮后添加的内联样式,则立即触发过渡,并执行处理程序。这里会是竞争条件吗?高度应该在设置过渡后更改,而不是在此之前更改。<nav>
height
transitionend
动漫人物
相关分类