У меня есть ползунок, значение которого меняет количество яркости, добавленной к изображению.Измерьте ИЗМЕНЕНИЕ между перемещениями ползунка
$("#brightSlider").slider({
value: 0,
min: -20,
max: 20,
step: 0.1,
slide: function(event, ui) {
var curVal = ui.value;
$('#amount').text(curVal); // show slider value
},
stop: function(event, ui) { // when slider stops, perform the function
var curVal2 = ui.value;
Caman('#example', function() {
this.brightness(curVal2); // add brightness
this.render(); // render it
});
}
});
Теперь яркость добавляется каждый раз, когда ползунок останавливается, поэтому он останавливается на 10, значение 10 добавляется к яркости. Затем немного больше останавливается на 15, 15 добавляется к яркости. Итак, после этих двух слайдов, что изображение имело, было добавлено 25 к яркости, 10 и 15.
То, что на самом деле нужно делать, это добавить 10, а затем добавить 5, чтобы суммировать до 15, не добавляя 15. Следовательно, если второй слайд был равен -5, он должен вычитать -5 от яркости, но что бы он сделал, это добавить 5 (оригинал 10 - 5)
Я могу вернуть изображение между рендерами, но это создает вспышка, в то время как изображение возвращается в нормальное состояние, что является просто уродливым.
ВОПРОС Есть ли способ измерить разницу между слайдами?
В этом близко, но не корректно - если вы переверните ползунок до 20, а затем до -20, переменная разницы отображается как -40, когда она должна отображаться только как -20 –
@DarrenSweeney. Затем вам нужно будет отслеживать начальное значение и выполнить все вычисления против этого вместо предыдущего значения. –