ゲーム終了後にスライダーを上下に移動できないようにするためにスライダーのバインドを解除しましたが、クリックして再びプレイすると、スライダーは再びバインドされて再び動作するようになります。
init() の後に呼び出されるだけでなく、gameReset() でも呼び出される startGame() 関数内:
$( "#mySlider" )
.on('mousedown', sliderMouseDown)
.on('touchstart', sliderMouseDown)
.slider({
orientation: "vertical",
range: "min",
min: 0,
max: 100,
value: 0,
step: 1,
animate: "slow",
slide: refreshSwatch,
change: refreshSwatch
});
そのコードは、最初にスライダーを「セットアップ」するのに問題なく機能しますが、gameReset() が startGame() コードを再度呼び出すと、スライダーが「再バインド」されないようです。私はそれを正しくやっているとは思わない、別の方法はありますか?
gameEnded() でアンバインドするために使用するコードは次のとおりです。
$("#mySlider").unbind();