diff --git a/lib/ui/elements/slider_ab.mjs b/lib/ui/elements/slider_ab.mjs index 01082fad4..b5add9d92 100644 --- a/lib/ui/elements/slider_ab.mjs +++ b/lib/ui/elements/slider_ab.mjs @@ -70,28 +70,28 @@ export default function slider_ab(params) { // Check whether value is a number. if (isNaN(value)) return false; - + if (params.data_id === 'a' && value > maxInputParams.newValue) { - + return false } - + if (params.data_id === 'b' && value < minInputParams.newValue) { - + return false } - + if (params.min && value < params.min) { - + // The value is smaller than min. return false } - + if (params.max) { - + return value <= params.max } - + return true } @@ -126,11 +126,11 @@ export default function slider_ab(params) { max=${params.max} step=${params.step} value=${params.val_b} - oninput=${onRangeInput}/>` + oninput=${e => onRangeInput(e, params)}/>` // The sliderElement property is required to update the range input on numeric input. - minInputParams.sliderElement = element - maxInputParams.sliderElement = element + minInputParams.sliderElement = element + maxInputParams.sliderElement = element /** @function onRangeInput @@ -142,10 +142,11 @@ export default function slider_ab(params) { @param {Object} e oninput event from range type input. */ - function onRangeInput(e) { + function onRangeInput(e, params) { // Range type input return a string target.value. const val = Number(e.target.value) + params.onRangeInput = true; // Check whether input event is from minRangeInput. if (e.target.dataset.id === 'a') {