我想先水平地给一个
添加动画,然后再垂直地给它添加动画。但使用requestAnimationFrame的问题是它会同时执行这两个动画,使得
以对角线方向移动。
以下是fiddle链接:https://jsfiddle.net/akonchady/z4qmkuyc/22/ 我做错了什么?
另外注意:如果我在第二次调用中加入超时(timeout),则可以按预期工作。
以下是fiddle链接:https://jsfiddle.net/akonchady/z4qmkuyc/22/ 我做错了什么?
另外注意:如果我在第二次调用中加入超时(timeout),则可以按预期工作。
animate('abc', 'marginLeft', 250, 1000);
setTimeout(function() {
animate('abc', 'marginTop', 250, 1000);
}, 3000);
然而,我希望避免超时。我如何只使用 requestAnimationFrame
来实现这一点?
animate
函数两次是没有帮助的。只需调用一次,并且必须有一个条件来测试element
的位置。而且坦率地说,+new Date
对于可读性来说并没有帮助... - Rayonanimate
设置超时时间,它会按预期工作。 - Adarsh KonchadysetTimeout
来实现函数正常流程。难道没有更好的方法吗! - Adarsh Konchady