Javascript 连续Tween Keneticjs 5.1.0

Javascript 连续Tween Keneticjs 5.1.0,javascript,canvas,tween,Javascript,Canvas,Tween,好的,解决了。将吐温放置在单击功能中 我正在尝试使用一个点击事件,用Kinetic.Tween旋转星元素。第一个tween可以工作,但是连续的点击不能。这是我的错误,函数的限制,还是我应该使用动能动画 您可以使用为tween的.finish事件提供回调函数 当tween完成时,将触发回调 myTween.finish(callback) 有趣。回调会做什么?目标是单击旋转+60度,再次单击旋转+60度(120),再次单击旋转+60度(180),。。。 var stage = new Kin

好的,解决了。将吐温放置在单击功能中

我正在尝试使用一个点击事件,用Kinetic.Tween旋转星元素。第一个tween可以工作,但是连续的点击不能。这是我的错误,函数的限制,还是我应该使用动能动画


您可以使用为tween的
.finish
事件提供回调函数

当tween完成时,将触发回调

myTween.finish(callback)

有趣。回调会做什么?目标是单击旋转+60度,再次单击旋转+60度(120),再次单击旋转+60度(180),。。。
var stage = new Kinetic.Stage({
    container: 'container',
    width: 200,
    height: 200
});

var layer = new Kinetic.Layer();

var star = new Kinetic.Star({
    x: stage.width() / 2,
    y: stage.height() / 2,
    numPoints: 17,
    innerRadius: 30,
    outerRadius: 70,
    fill: 'red',
    stroke: 'black',
    strokeWidth: 4,

});

star.on('click', function () {
    Spin60.play();
});

layer.add(star);
stage.add(layer);


console.log(star.rotation());


var Spin60 = new Kinetic.Tween({
    node: star,
    rotation: +60,
    duration: 3,
    easing: Kinetic.Easings.EaseInOut,
    onFinish: function () {
        console.log(star.rotation());
    }
});
myTween.finish(callback)