1

我取消绑定滑块以禁止人们在游戏结束后上下移动它,但是当他们再次点击播放时,滑块应该重新绑定以再次工作。

在我的 startGame() 函数内部,它在 init() 之后调用,但也在 gameReset() 上调用:

$( "#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

1

而不是取消绑定尝试销毁

$("#mySlider").slider( "destroy" );

或者您可以禁用启用滑块

gameEnded()

$( "#mySlider" ).slider( "disable" );

而在gameReset()

$( "#mySlider" ).slider( "enable" );
于 2013-05-15T09:32:38.070 回答