SliderValueRange Class
One class of value algorithm that can be built onto SliderBase. By default,
values range between 0 and 100, but you can configure these on the
built Slider class by setting the min
and max
configurations. Set the initial value (will cause the thumb to move to the
appropriate location on the rail) in configuration as well if appropriate.
Item Index
Methods
Methods
_afterMaxChange
-
e
Update position according to new max value. If the new max results in the current value being out of range, the value is set to the closer of min or max.
Parameters:
-
e
EventFacadeThe
max
attribute change event.
_afterMinChange
-
e
Update position according to new min value. If the new min results in the current value being out of range, the value is set to the closer of min or max.
Parameters:
-
e
EventFacadeThe
min
attribute change event.
_afterValueChange
-
e
Propagate change to the thumb position unless the change originated from the thumbMove event.
Parameters:
-
e
EventFacadeThe
valueChange
event.
_bindValueLogic
()
protected
Override of stub method in SliderBase that is called at the end of its bindUI stage of render(). Subscribes to internal events to trigger UI and related state updates.
_calculateFactor
()
protected
Calculates and caches (range between max and min) / (rail length) for fast runtime calculation of position -> value.
_defThumbMoveFn
-
e
Dispatch the new position of the thumb into the value setting operations.
Parameters:
-
e
EventFacadeThe host's thumbMove event
_initSliderValueRange
()
protected
Stub for construction logic. Override if extending this class and you need to set something up during the initializer phase.
_nearestValue
-
value
Returns the nearest valid value to the value input. If the provided value is outside the min - max range, accounting for min > max scenarios, the nearest of either min or max is returned. Otherwise, the provided value is returned.
Parameters:
-
value
MixedValue to test against current min - max range
Returns:
Current min, max, or value if within range
_offsetToValue
-
offset
Converts a pixel position into a value. Calculates current
thumb offset from the leading edge of the rail multiplied by the
ratio of (max - min) / (constraining dim)
.
Override this if you want to use a different value mapping algorithm.
Parameters:
-
offset
NumberX or Y pixel offset
Returns:
Value corresponding to the provided pixel offset
_setNewValue
-
value
Restricts new values assigned to value
attribute to be
between the configured min
and max
.
Rounds to nearest integer value.
Parameters:
-
value
NumberValue assigned to
value
attribute
Returns:
Normalized and constrained value
_setPosition
-
value
-
[options]
Positions the thumb and its ARIA attributes in accordance with the translated value.
_syncThumbPosition
()
protected
Move the thumb to appropriate position if necessary. Also resets the cached offsets and recalculates the conversion factor to translate position to value.
_validateNewMax
-
value
Validates new values assigned to max
attribute. Numbers
are acceptable. Override this to enforce different rules.
Parameters:
-
value
MixedValue assigned to
max
attribute.
Returns:
True for numbers. False otherwise.
_validateNewMin
-
value
Validates new values assigned to min
attribute. Numbers
are acceptable. Override this to enforce different rules.
Parameters:
-
value
AnyValue assigned to
min
attribute.
Returns:
True for numbers. False otherwise.
_valueToOffset
-
val
Converts a value into a pixel offset for use in positioning
the thumb according to the reverse of the
_offsetToValue( xy )
operation.
Parameters:
-
val
NumberThe value to map to pixel X or Y position
Returns:
The pixel offset
_verifyValue
()
protected
Verifies that the current value is within the min - max range. If not, value is set to either min or max, depending on which is closer.
getValue
()
Number
Returns the current value. Override this if you want to introduce output formatting. Otherwise equivalent to slider.get( "value" );
Returns:
Properties
Attributes
majorStep
Number
amount to increment/decrement the Slider value when the page up/down keys are pressed
Default: 10
Fires event majorStepChange
Fires when the value for the configuration attribute majorStep
is
changed. You can listen for the event using the on
method if you
wish to be notified before the attribute's value has changed, or
using the after
method if you wish to be notified after the
attribute's value has changed.
Parameters:
-
e
EventFacadeAn Event Facade object with the following attribute-specific properties added:
max
Number
The value associated with the farthest bottom, right position of
the rail. Can be less than the configured min
if
you want values to increase from right-to-left or bottom-to-top.
Default: 100
Fires event maxChange
Fires when the value for the configuration attribute max
is
changed. You can listen for the event using the on
method if you
wish to be notified before the attribute's value has changed, or
using the after
method if you wish to be notified after the
attribute's value has changed.
Parameters:
-
e
EventFacadeAn Event Facade object with the following attribute-specific properties added:
min
Number
The value associated with the farthest top, left position of the
rail. Can be greater than the configured max
if you
want values to increase from right-to-left or bottom-to-top.
Default: 0
Fires event minChange
Fires when the value for the configuration attribute min
is
changed. You can listen for the event using the on
method if you
wish to be notified before the attribute's value has changed, or
using the after
method if you wish to be notified after the
attribute's value has changed.
Parameters:
-
e
EventFacadeAn Event Facade object with the following attribute-specific properties added:
minorStep
Number
amount to increment/decrement the Slider value when the arrow up/down/left/right keys are pressed
Default: 1
Fires event minorStepChange
Fires when the value for the configuration attribute minorStep
is
changed. You can listen for the event using the on
method if you
wish to be notified before the attribute's value has changed, or
using the after
method if you wish to be notified after the
attribute's value has changed.
Parameters:
-
e
EventFacadeAn Event Facade object with the following attribute-specific properties added:
value
Number
The value associated with the thumb's current position on the rail. Defaults to the value inferred from the thumb's current position. Specifying value in the constructor will move the thumb to the position that corresponds to the supplied value.
Default: (inferred from current thumb position)
Fires event valueChange
Fires when the value for the configuration attribute value
is
changed. You can listen for the event using the on
method if you
wish to be notified before the attribute's value has changed, or
using the after
method if you wish to be notified after the
attribute's value has changed.
Parameters:
-
e
EventFacadeAn Event Facade object with the following attribute-specific properties added: