Range Slider
This handy slider will allow you to drag a handle to select a specific value from a range.
Basic
You can create a range slider bar using minimal markup.
<div class="range-slider" data-slider>
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div>Advanced
Range slider also supports a disabled state.
<div class="range-slider disabled" data-slider>
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div>Themes
The range slider also supports the Sonos brand colors with the addition of a simple class. Examples below.
<div class="range-slider play1" data-slider>
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div><div class="range-slider play3" data-slider>
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div><div class="range-slider play5" data-slider>
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div><div class="range-slider playbar" data-slider>
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div><div class="range-slider sub" data-slider>
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div><div class="range-slider connect-amp" data-slider>
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div><div class="range-slider connect" data-slider>
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div><div class="range-slider amber" data-slider>
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div><div class="range-slider light" data-slider>
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div><div class="range-slider dark" data-slider>
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div>Fixed Steps
You can create a range slider with fixed steps by setting the steps variable in the data-options attribute. The configured number is the percentage the handle will move per step.
<div class="range-slider" data-slider data-options="step: 20;">
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div>Custom Range
You can create a range slider with custom range by setting the start and end variables in the data-options attribute.
<div class="range-slider" data-slider data-options="start: 1; end: 10;">
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div>Custom Starting Point
You can create a range slider with custom initial setting by adjusting the initial variable in the data-options attribute.
<div class="range-slider" data-slider data-options="start: 1; end: 10; initial: 9;">
    <span class="range-slider-handle"></span>
    <span class="range-slider-active-segment"></span>
    <input type="hidden">
</div>Callbacks
There are two ways to bind callbacks to your sliders.
Callback Function
$(document).foundation({
  slider: {
    on_change: function() {
      // do something when the value changes
    }
  }
});Events
$('[data-slider]').on('change.fndtn.slider', function() {
  // do something when the value changes
});Getting & Setting Values
To get the value of a slider, get the value of its data-slider attribute.
$('#slider').attr('data-slider');To set a slider's value, call the foundation function on the slider and pass in 'slider', 'set_value' and the new slider value as arguments.
var new_value = 3;
$('slider').foundation('slider', 'set_value', new_value);