我正在尝试在到达#preFooter
的顶部时隐藏导航元素。
我已经开发了nav元素以实现移动响应,因此创建了.tab-wrap
和.tab-wrap-mobile
。
当我到达#preFooter
的顶部时,允许这两个项目滑开,我已将它们包裹在.tab-wrap-all
中。
然而,jQuery的slideUp(); / slideDown();
方法并不像它们应该的那样顺利运行。
我预感到我如何在css中设置display
配置,以便使用媒体查询隐藏元素。但我似乎无法弄明白。
到目前为止,这是小提琴:https://jsfiddle.net/gavinfriel/0x68f545/
答案 0 :(得分:0)
尝试为slideUp()和slideDown()函数添加更长的持续时间(默认值为400)
答案 1 :(得分:0)
问题是由于子Observable
元素上的position: fixed
造成的。
这会阻止slideDown / slideUp工作,因为您尝试动画的元素在视觉上不包含其中的固定元素 - 固定元素相对于文档定位,而不是任何其他包含元件。当jQuery试图为.tab-wrap
的高度设置动画时,它没有高度,所以没有动画效果。内部的固定元素仅受动画结束时发生的.tab-wrap-all
的影响。
如果您将此固定定位应用于您正在设置动画的display: none
元素,它将正常工作。