押すと D3 で 1.5 秒間色の変化が始まるボタンがあります。問題は、トランジションの実行中に誰かがボタンをもう一度押すと、アニメーションが最初からやり直すことです。これに対処する方法はありますか?アニメーションが行われていることを示す変数がある場合でも、変数はアニメーションが完了する前でも false に変更されます。それでも、変数をどこに配置すればよいかわかりません
if (animation !== "false") { ??????
d3.select("#" + element.id).transition().attr("fill", "#fffff").duration(animationDuration)
}