ボタンのクリック時に左回転または右回転をアニメートしようとしています。残念ながら、左回転用のボタンをクリックすると、コンパイルが速く高速になります。右クリックでも同じことが起こります。回転を無効にするには、反対のボタンを複数回クリックする必要があります。ボタンのクリックでcancelAnimationFrameが機能しない
私は右の回転をキャンセルし、左に回転し、その逆に回転するようにしたいと思います。今すぐ最初のボタンを押すたびに、反対のボタンの時間をクリックする必要があります。
以下のコード:
var initialFrame = function() {
requestAnimationFrame(initialFrame);
renderer.render(scene, camera);
};
var rotateLeft = function() {
requestAnimationFrame(rotateLeft);
wrap.rotation.y += -0.02;
wrapBack.rotation.y += -0.02;
renderer.render(scene, camera);
};
var rotateRight = function() {
requestAnimationFrame(rotateRight);
wrap.rotation.y += 0.02;
wrapBack.rotation.y += 0.02;
renderer.render(scene, camera);
};
initialFrame()
$("#left-button").click(function() {
cancelAnimationFrame(rotateRight);
rotateLeft();
});
$("#right-button").click(function() {
cancelAnimationFrame(rotateLeft);
rotateRight();
});
これは私が持っていたものよりも無限に優れています。 –