从一个noUISlider输出两个值

时间:2015-09-25 08:46:54

标签: javascript jquery nouislider

我想从一个noUIslider范围输出两个值。使用noUIslider文档中的示例我已经到了可以输出相同值两次的点,但我希望其中一个输出显示已通过数学公式(例如* 2或/ 3)的值,所以它显示了不同的输出。

我的javaScript / jQuery功能很弱,请耐心等待。

// Setting up the slider
var tooltipSlider = document.getElementById('slider-tooltip');

noUiSlider.create(tooltipSlider, {
  start: [40000],
  step: 10000,
  range: {
      'min': 40000,
      'max': 5000000
  },
  format: wNumb({
      decimals: 3,
      thousand: '.',
      prefix: '£ ',
  })
});


var tipHandles = tooltipSlider.getElementsByClassName('noUi-handle'),
  tooltips = [];

// Add divs to the slider handles.
for (var i = 0; i < tipHandles.length; i++) {
  tooltips[0] = document.createElement('div');
  tipHandles[0].appendChild(tooltips[0]);
}

// Add a class for styling
tooltips[0].className += 'score';
// Add additional markup
tooltips[0].innerHTML = '<strong>Price </strong><span></span>';
// Replace the tooltip reference with the span we just added
tooltips[0] = tooltips[0].getElementsByTagName('span')[0];

// When the slider changes, write the value to the tooltips.
tooltipSlider.noUiSlider.on('update', function (values, handle) {
  tooltips[handle].innerHTML = values[handle];
});

// When the slider changes, write the value again + maths
var rangeSliderValueElement = document.getElementById('slider-range-  value');

tooltipSlider.noUiSlider.on('update', function (values, handle) {
  rangeSliderValueElement.innerHTML = 'Price + Math: ' + values[handle];
});

我已经建立了一个迄今为止我所拥有的JSFiddle: https://jsfiddle.net/jherit/qhgd9to0/1/

1 个答案:

答案 0 :(得分:0)

我认为你无法进行计算,因为你有一个前缀

prefix: '£ '

如果删除前缀而不是数字值,则可以使用它进行计算。

https://jsfiddle.net/qhgd9to0/3/