JSFiddle - React, Tailwind, and code Playground
HTML
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.11/themes/base/jquery-ui.css">
<div class='slider'></div>
<div class='slider'></div>
<input id='t1' type='text' />
CSS
body {
margin:50px;
}
.tooltip {
position: absolute;
z-index: 1020;
display: block;
padding: 5px;
font-size: 11px;
visibility: visible;
margin-top: -2px;
bottom:120%;
margin-left: -2em;
}
.tooltip .tooltip-arrow {
bottom: 0;
left: 50%;
margin-left: -5px;
border-top: 5px solid #000000;
border-right: 5px solid transparent;
border-left: 5px solid transparent;
position: absolute;
width: 0;
height: 0;
}
.tooltip-inner {
max-width: 200px;
padding: 3px 8px;
color: #ffffff;
text-align: center;
text-decoration: none;
background-color: #000000;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
.ui-slider {
background: black repeat-x bottom left;
border-bottom: 1px solid #EBEAE5;
height: 15px;
margin: 0;
padding: 0px;
}
.ui-slider-range {
height: 10px;
border-bottom: 3px solid red;
position: relative;
}
.ui-slider-handle {
background: #ED6B51 !important;
border-bottom: 1px solid #a8a79f !important;
border-right: 1px solid #a8a79f !important;
height: 20px !important;
width: 10px !important;
margin: 0 !important;
padding: 0px !important;
display: inline-block !important;
top: -4px !important;
}
JavaScript
var initialValue = 2012;
var sliderTooltip = function (event, ui) {
var curValue = ui.value || initialValue;
var target = ui.handle || $('.ui-slider-handle');
var tooltip = '<div class="tooltip"><div class="tooltip-inner">' + curValue + '</div><div class="tooltip-arrow"></div></div>';
$(target).html(tooltip);
};
$('#t1').change(function () {
var value = $(this).val();
$(".slider").slider("value", parseInt(value));
});
$(".slider").slider({
value: initialValue,
min: 1955,
max: 2015,
step: 1,
create: sliderTooltip,
slide: function (event, ui) {
$(".tooltip-inner",this).html(ui.value);
},
change: function (event, ui) {
$(".tooltip-inner",this).html(ui.value);
}
});