具有自定义比例的负AngularJS滑块

时间:2017-09-23 15:23:59

标签: javascript angularjs angularjs-directive slider angularjs-slider

我正在使用自定义的AngularJS Slider Scale,如您所见:JSFIDDLE

现在,我想要的是从-1开始。所以我改变了选项:

options: {
  floor: 0,
  ceil: 5,
  step: 1
}

要:

options: {
  floor: -1,
  ceil: 5,
  step: 1
}

但结果如下:JSFIDDLE

正如您所看到的,它始于' 0'价值然后重叠' 1'和' -1'。 我怎样才能有正确的顺序? (-1,0,1,2,3,4,5)

1 个答案:

答案 0 :(得分:1)

在战斗时保持标志

  customValueToPosition: function(val, minVal, maxVal) {
     val = Math.sign(val) * Math.pow(val,2)
     maxVal = Math.sign(maxVal) * Math.pow(maxVal, 2)
      minVal = Math.sign(minVal) * Math.pow(minVal, 2)
      var range = maxVal - minVal
      return (val - minVal) / range
    },
  customPositionToValue: function(percent, minVal, maxVal) {
    minVal = Math.sign(minVal) * Math.pow(minVal,2);
    maxVal = Math.sign(maxVal) * Math.pow(maxVal,2);
    var value = percent * (maxVal - minVal) + minVal;
    return Math.sqrt(value)
  }

PLUNKER (NOT JSFIDDLE):)