jQuery向上/向下滑动:不影响下面的内容?

时间:2012-09-27 03:37:24

标签: jquery html css effects slidedown

所以我有一个默认显示的div。我正在使用一个函数来滑动元素,然后更改内容,然后再向下滑动以显示新信息。

这一切都很好。

令我困扰的是,当div正在制作动画时,它下面的所有内容都会上下移动。

基本上,它似乎隐藏了它的“display:none” - 可以这么说,这意味着它正在被淘汰出局。 我希望它更像是“可见性:隐藏”。

......如果这是有道理的(上帝,我希望它确实如此。这是一个漫长的一周。= P)

2 个答案:

答案 0 :(得分:2)

当移除上面的元素时,元素向上滑动以填充间隙。对于HTML,重力是向上的,这就是我们向下构建HTML的原因(从浏览器的顶部向下)。

让我们假装你的物体向上滑动如下:

<div class="SlideUpDiv" style="height:500px; display:block;">Hello!</div>

你需要做的是将div包装在另一个具有相同高度的div中:

<div class="slideUpContainer" style="height:500px; display:block;">
  <div class="slideUpDiv" style="height:500px; display:block;">Hello!</div></div>
</div>

这样,当第一个元素粉碎时,间隙将由父div保持打开。

答案 1 :(得分:1)

我认为最简单的方法是将Slide元素放在一个固定高度的div中。例如

<div class='wrapper'>
    <div class='slider'>
    <!-- content for slider here -->
    </div> <!-- close slider -->
</div>  <!--close wrapper -->

然后设置然后设置设置滑块jquery,我假设你已经完成了这个并且不需要看到它。

CSS看起来像:

div.wrapper {height: 250px; overflow: hidden;}
div.slider {max-height: 250px;}

这样,滑块在固定大小的元素内上下移动,其余元素不受影响。