2017-12-05 3 views
2

Ich möchte in der Lage sein, den Schieberegler Wert zu setzen, ohne das Update-Ereignis zu schießen. Ich habe versucht, mit einem zweiten Parameter (FireSetEvent) in der set Funktion, aber das funktioniert nicht.Wie setze ich den Slider Wert ohne 'Update' Feuerring?

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); 
+0

Kann nicht setzen Sie das 'Starten' param mit' val'? –

+0

@Mosh Feu, ich bin mir nicht sicher, was du meinst? Ich möchte den Startwert nicht einstellen. Ich kann den aktuellen Wert des Sliders mit .set() einstellen, aber ich möchte nur nicht, dass das Event 'update' ausgelöst wird. Das sollte nur ausgelöst werden, wenn die Schieberposition manuell geändert wird. – Flemming

Antwort

3

Wenn Sie Updates nur zu handhaben sollen, wenn der Benutzer den Schieber ziehen, aber nicht, wenn der Code ein Update eingestellt, können Sie zum slide Ereignisse hören.

Aus der Dokumentation:

Dieses Ereignis ist nützlich, wenn Sie speziell auf einen Griff hören wollen gezogen wird, sondern wollen ignorieren andere Updates auf den Schieber Wert. Dieses Ereignis wird auch bei einer Änderung durch einen "Tap" ausgelöst. In den meisten Fällen ist die update die bessere Wahl.

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); 
Verwandte Themen