1

ゲーム終了後にスライダーを上下に移動できないようにするためにスライダーのバインドを解除しましたが、クリックして再びプレイすると、スライダーは再びバインドされて再び動作するようになります。

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();
4

1 に答える 1