createjs - 如何在 Adobe AnimateCC 中使用 createJS 代码创建基于时间轴的动画?
问题描述
我想通过使用createJS在Adobe AnimateCC中使用代码进行补间,但是当我尝试将它们链接在一起/按顺序动画对象时,我遇到了麻烦,因为它们都同时开始(而不是正方形移动然后圆移动),这是打开的 AnimateCC 文件:http ://spectrumcreative.co.nz/stackOverflow/animateWithCode.fla ,这是我的代码:
var targetSquare = this.square;
var tweenSquare = createjs.Tween.get(targetSquare, {loop: false})
.to({x: 300}, 1500, createjs.Ease.bounceOut)
var targetCircle = this.circle;
var tweenCircle = createjs.Tween.get(targetCircle, {loop: false})
.to({x: 300}, 1500, createjs.Ease.bounceOut)
解决方案
最简单的方法是使用wait() 我刚刚制作了animationTime变量以供重用,您可以在wait() 中设置任意时间
var animationTime = 1500;
var targetSquare = this.square;
var tweenSquare = createjs.Tween.get(targetSquare, {loop: false}).to({x: 300}, animationTime, createjs.Ease.bounceOut)
var targetCircle = this.circle;
var tweenCircle = createjs.Tween.get(targetCircle, {loop: false}).wait(animationTime).to({x: 300}, animationTime, createjs.Ease.bounceOut);
这也可以像这样完成,所以第二个动画只有在第一个动画完成后才会开始,并且call()会触发。
var animationTime = 1500;
var targetSquare = this.square;
var tweenSquare = createjs.Tween.get(targetSquare, {loop: false}).to({x: 300}, animationTime, createjs.Ease.bounceOut).call(function(){
var targetCircle = this.circle;
var tweenCircle = createjs.Tween.get(targetCircle, {loop: false}).to({x: 300}, animationTime, createjs.Ease.bounceOut);
});
推荐阅读
- firebase - 将匿名帐户转换为电话号码帐户
- r - 在 rstudio 中安装 rpf 包时出现“致命错误:Eigen/Core:没有这样的文件或目录”
- python - 无法在 pyserial 上发送 Enter 命令
- android - Jsoup在网页中找不到视频
- angularjs - Springboot web应用:加载资源失败:服务器响应状态为404()
- python - 如何通过 pip 安装 tweepy?
- javascript - 传单不接受边界
- azure-service-fabric - 如何将托管服务标识添加到托管在 Azure VM Scaleset 或 Service Fabric 中的容器?
- functional-programming - 类型检查与类型推断
- c# - 通过 tcp 流式传输的图像被分成 3 部分,中间缺失