如何在动画cc上播放我的功能?

时间:2018-01-03 02:57:30

标签: javascript animation createjs animate-cc

我创建了一个函数:

function playFirework() {
createjs.Tween.get(this.red_firework, { loop: false })
.to({ y: 100 }, 1000, createjs.Ease.getPowInOut(2));
}

这会使烟花在画布上移动到y = 100。当我删除该功能并离开身体时,它会自动播放。我试着叫它

playFirework();

this.playFirework();

但它似乎没有发挥。

任何想法为什么?

1 个答案:

答案 0 :(得分:0)

这是一个常见问题。您的函数是匿名定义的,因此它仅在该框架的范围内可用。调用它时,print("your year of birth is {0}".format(year - int(age))) 是全局的,因此this未定义。

一个简单的解决方案是在this.red_firework上定义函数。

this

如果您使用this.playFirework = function() { createjs.Tween.get(this.red_firework, { loop: false }) .to({ y: 100 }, 1000, createjs.Ease.getPowInOut(2)); } 调用范围,这将使范围正确。

您也可以将该功能保持原样,但将呼叫绑定到this.playFirework()

this

希望有所帮助!