我在库中创建了一个名为firework_mc的影片剪辑,并编写了以下代码,希望将其放置在画布上:

var movieClip = exportRoot.firework_mc.play();
movieClip.x=100;
movieClip.y=100;


我希望这会起作用,但显然不会。关于如何将其放置在画布上还有其他想法吗?

最佳答案

play方法does not return a MovieClip instance。因此,您的movieclip实例为null。

您应该可以执行以下操作:

var movieclip = exportRoot.firework_mc;
movieclip.play();
movieclip.x = 100;
movieclip.y = 100;


Animate导出存在一些问题,无法立即控制孩子。通常,您可以使用gotoAndStop来解决此问题。

exportRoot.gotoAndStop(0);
// Then your code.


仅当firework_mc是exportRoot的子级时(即,在Animate中的舞台上),这才起作用。如果不是,则可以在动画库中访问它:

var movieclip = new lib.firework_mc();
stage.addChild(movieclip);
// Or
exportRoot.addChild(movieclip);


干杯,

关于javascript - 为什么exportRoot无法使用createjs和animate cc将动画片段放置在 Canvas 上?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48083464/

10-13 00:25