我从Kinetic.js开始,我的第一个应用程序完美运行,但我找不到停止精灵的方法...例如,我有一个精灵,我想“玩”那个精灵只需一次,看到框架,在最后一个,一个简单的停止()。我怎样才能做到这一点? (在精灵的最后一个“帧”之后停止。)
这是我的代码(针对该精灵):
var myImage = new Image();
myImage.onload = function() {
var mySprite = new Kinetic.Sprite({
x: 250,
y: 40,
width: 70,
height: 109,
image: myImage,
animation: 'idle',
animations: animations,
frameRate: 5
});
layer1.add(mySprite);
mySprite.start();
};
myImage.src = 'sheet2.png';
提前致谢!
答案 0 :(得分:1)
您可以使用afterFrame
功能,这将使您能够在特定帧之后触发事件。
然后你可以在第5帧之后调用stop()
。 (你需要将它更新到你的精灵中有多少帧。)
mySprite.afterFrame(5, function(){
mySprite.stop();
});
您可以在以下两篇文章中看到使用afterFrame
的示例:
http://ramkulkarni.com/blog/sprite-animation-in-html5-canvas-with-kineticjs/ http://www.html5canvastutorials.com/kineticjs/html5-canvas-kineticjs-sprite-tutorial/