2
オブジェクトをアニメーション化してからmouse:over
イベントを追加できます。 mouse:over
イベントは、矩形の元の位置から発射し続けただしFabric JS:アニメーションオブジェクト上のマウスを使用
var canvas = new fabric.Canvas('c');
var x1 = 5;
var y1 = 5;
var x2 = 100;
var y2 = 100;
var rect = new fabric.Rect({
width: 10,
height: 10,
left: x1,
top: y1,
stroke: '#000',
strokeWidth: 2,
fill: '#faa',
selectable: false
});
canvas.add(rect);
rect.animate({
'left': x2,
'top': y2
}, {
duration: 10000,
onChange: canvas.renderAll.bind(canvas),
onComplete: function() {
}
});
canvas.on('mouse:over', function (e) {
console.log('mouseover');
});
<canvas id="c"></canvas>
<script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/1.6.3/fabric.min.js"></script>
。アニメーションが終了すると、アニメーションオブジェクトに対してmouse:over
イベントが再度作用します。
オブジェクトが移動/アニメーション中にmouse:over
イベントを起動することはできますか?
フランクに感謝します。しかし、あまりにも多くのオブジェクトで集中的になるかもしれませんか? –
@JakeNそうかもしれません。それは私が思い付くことができる最高の回避策です。うまくいけば、他の誰かが何か良いことを示唆したり、あなたが問題を報告した場合に返事を返したりします。 –