在Adobe Edge Animate中使用Top / Left代替webkit变换

时间:2014-03-06 17:21:14

标签: jquery jquery-ui animation css-animations adobe-edge

我使用Adobe Edge Animate与jquery ui draggable和droppable进行了很好的简单交互。您将框从一个区域拖到其他位置。一切正常。

然后,我决定为这些盒子添加一个入口动画。这破坏了一切,因为jquery draggable动画顶部:left:你的对象的值,但不知何故在Edge中添加动画使它设置为顶部:并且左:0并使用webkit transformX / Y.

所以现在一旦我开始拖动,框就会向下跳,因为draggable正在为顶部设置动画:left:和Edge Animate保持变换

有没有办法强制EA使用top:left:for animation?注意,盒子入口的一部分包括一个旋转,所以可能这就是为什么它决定使用变换,所以它可以做X / Y并旋转一个。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

问题是,在AE中你可以设置“顶部”和“左”的动画,但是你无法控制它是变为transformX / Y还是变为css top:left:。 AE让它成为了自己的想法。看起来除了移动物品(例如旋转或缩放)之外你决定停止使用顶部/左边并将它们全部组合成包括x y和rot的单个变换。 AE不允许您选择为css top:left:property设置动画,并为rot添加css变换。

尽管如此,我现在找到了一个工作黑客。拖动开始时,添加一个类

.notransition {
  -webkit-transform:none!important;
  transform:none!important;
}

所以变换被删除,拖动效果很好。奇怪的是,在下降之后,不要删除课程。它会在剩下的时间里停留。如果你考虑它,它是有道理的,因为转换是无和顶部:左边已被jquery-ui draggable永久修改。