如何设置滑块值而不更新' firering?

时间:2017-12-05 11:04:28

标签: javascript jquery nouislider

我希望能够在不触发更新事件的情况下设置滑块值。我尝试在set函数中设置第二个参数(fireSetEvent),但这不起作用。

nouiContrast = document.getElementById('nouiContrast');
noUiSlider.create(nouiContrast, {
  start: 0,
  step: 0.01,
  behaviour: 'tap',
  connect: [true, false],
  range: {
    'min': 0,
    'max': 1
  }
});
nouiContrast.noUiSlider.on('update', function(values, handle) {
  applyFilterValue(6, 'contrast', values[handle]);
});

//....

nouiContrast.noUiSlider.set(val, false);

1 个答案:

答案 0 :(得分:3)

如果您只想在用户拖动滑块时处理更新,而不是在代码设置更新时处理更新,则可以收听slide事件。

来自文档:

  

当您特别想要收听被拖动的句柄但希望忽略其他更新到滑块值时,此事件非常有用。此事件还会通过“点击”触发更改。在大多数情况下,update是更好的选择。

nouiContrast = document.getElementById('nouiContrast');
noUiSlider.create(nouiContrast, {
  start: 0,
  step: 0.01,
  behaviour: 'tap',
  connect: [true, false],
  range: {
    'min': 0,
    'max': 1
  }
});
nouiContrast.noUiSlider.on('slide', function(values, handle) {
  applyFilterValue(6, 'contrast', values[handle]);
});

//....

nouiContrast.noUiSlider.set(val, false);