JSFiddle - React, Tailwind, and code Playground
by Martyna Valentaite
HTML
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
<div id="quote-input" class="slider-input">
<div id="minus1" class="minus"><span>-</span></div>
<div id="plus1" class="plus">+</div>
<input type="text" id="cap" class="slider-value">
<div id="slider-range-max" class="slider">
<span class="ui-slider-handle"></span>
</div>
CSS
.slider{
position: relative;
margin-top: 20px;
margin-bottom: 15px;
width: 90%;
background: #2A3137;
/* -moz-box-shadow: inset 0 0 10px #999;
-webkit-box-shadow: inset 0 0 10px #999;
box-shadow: inset 0 0 10px #999;*/
height: 15px;
border-radius:10px;
border: 1px solid #DDDDDD;
margin-left:15px;
}
.slider .ui-slider-handle{
position: absolute;
background: #10A447;
border-radius:5px;
width:20px;
height:50px;
top: -16px;
left: 50px;
border-style:none;
box-shadow:none ;
}
input[type=text]{
border: 1px solid #10A447;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
padding:5px 10px;
margin-top:-15px;
text-align: center;
background-color:#ffffff;
width:120px;
color:#2A3137;
font-size:18px;
font-weight: bold;
margin-top:5px;
margin-left:5px;
}
.minus, .plus{
display:inline-block;
float:left;
border: 1px solid #aaa;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
padding:5px 10px;
margin-top:-15px;
text-align: center;
background-color:#e3e3e3;
color:#333;
font-size:18px;
font-weight: bold;
margin-left: 5px;
cursor: pointer;
width:10px;
margin-top:5px;
}
JavaScript
$(function() {
var sizes = [ "10", "20", "30", "40", "50", "60", "70", "80", "90", "100", "200", "300", "400", "500", "1000" ];
$("#slider-range-max").slider({
range: "max",
min: 0,
max: sizes.length - 1,
step: 1,
slide: function(event, ui) {
$("#cap").val(sizes[ui.value]);
}
});
$( "#cap" ).val( $( "#slider-range-max" ).slider( "value" ) + ' TB' );
});
$("#plus1").click(function() {
var value = $("#slider-range-max").slider("value")
, step = $("#slider-range-max").slider("option", "step");
$("#slider-range-max").slider("value", value + step);
});
$("#minus1").click(function () {
var value = $("#slider-range-max").slider("value")
, step = $("#slider-range-max").slider("option", "step");
$("#slider-range-max").slider("value", value - step);
});