0

我从David Walsh 教程中借用了一些关于使用 mootools 进行动画删除的代码。

当我在表格行上使用 Mootools FX.slide 时,它​​会在向上滑动之前水平折叠该行,这不是预期的效果。

如果你想看看这里有一个小提琴 - http://jsfiddle.net/gNvvT/

如何使这种效果垂直平滑滑动,而不是向左折叠然后向上折叠?

谢谢!

4

2 回答 2

2

这是因为TR不是真正的块样式元素,它是display: table-row(iirc)。

Fx.Slide课程实际上只有 2 个技巧,它试图使用它来让它看起来像是在溶解,基本上:

  1. 将溢出从可见设置为隐藏,这在 TR 的上下文中是没有意义的。
  2. (可选)它可以将一个元素包装在一个包装器中,然后将其折叠,但是再一次,包装器成为元素的直接父级,它是一个 div,你不能在表格中这样做。

然后它允许它操纵元素的高度并使其更小等。

跳跃发生在它改变显示/溢出时,当它折叠表格后一切都变得有趣了。

您应该考虑另一种方法,例如淡入淡出,并在可用时进行缩放变换。

于 2011-12-20T21:59:39.187 回答
2

恐怕Fx.Slide不能使用表格行,而只能使用块元素。
正如迪米塔尔克里斯托夫对你说的那样。

我已经修改了你的小提琴来解决这个问题。从您发布的代码来看,您使用 Mootools 似乎很实用,所以我只是在代码上写了一些注释。我相信你会明白的。

http://jsfiddle.net/gNvvT/5/

让我知道它是否适用于您的实际应用程序!

编辑。我在之前的测试中留下了一些无用的代码。我删除了它并更新了小提琴 URL。

于 2011-12-20T22:15:12.903 回答