将值的字符串附加到 jQuery.ui 句柄

Appending string for value to jQuery.ui handle

太近了!为什么这个代码不起作用?在第一张幻灯片上,它获得了新值 (2),但保留了相同的消息 "terrible"。然后在那之后工作正常,除了消息都退后一个位置。快把我逼疯了!

var messages = {
  1: "terrible",
  2: "okay",
  3: "better",
  4: "great",
  5: "super!"
};

initialValue = 1

var messageUpdate = function(event, ui) {
  var curValue = ui.value || initialValue;
  var message = '<div id="out">' + (messages[$('#slider').slider('value')]) + '</div>';
  $('.ui-slider-handle').html(message);
}

$("#slider").slider({
  value: initialValue,
  min: 1,
  max: 5,
  step: 1,
  create: messageUpdate,
  slide: messageUpdate
});

当然,一旦你在这里看到黑白的,它就会变得很明显:

var curValue = ui.value || initialValue;
var message = '<div id="out">' + (messages[curValue]) + '</div>';

我没有使用自己的代码!