我希望能够设置滑块值而不会触发更新事件。我尝试在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);
最佳答案
如果仅在用户拖动滑块时才要处理更新,而在代码设置更新时不希望处理更新,则可以侦听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);