Как изменить шаг в noUiSlider?
Есть слайдер на noUiSlider, рендж от 3000 до 300 000. Не могу разобраться как сделать так чтобы шаг от 3000 до 5000 был равен 2000, а уже после пяти был равен 5000. И есть ли возможность в тексте маркера добавить разделитель в виде пробела и маркер валюты? 5 000$, 50 000$, 150 000$. Буду благодарен за помощь.
<div class="slider-container">
https://codepen.io/fisherspoon/pen/jOBWJQP
Ответы (1 шт):
Автор решения: Pilaton
→ Ссылка
Сделал вам как вы хотели.
Ссылка на Codepen на всякий случай
$(document).ready(function() {
let slider = document.getElementById("slider");
let input = document.getElementById("valFromSlider");
let slide = noUiSlider.create(slider, {
start: 3000,
range: {
min: [3000, 2000],
"10%": [5000, 5000],
max: [300000]
},
pips: {
mode: "values",
values: [3000, 5000, 50000, 100000, 150000, 200000, 250000, 300000],
format: wNumb({
suffix: " ₽"
})
}
});
slide.on("slide", function(values, handle) {
let value = parseFloat(values[handle]);
$(input).val(value);
});
});
body {
font-family: "Open Sans", sans-serif;
}
.slider-container {
max-width: 800px;
margin: 50px 0 0 50px;
}
.noui-slider {
margin-top: 50px;
}
.noUi-marker.noUi-marker-horizontal.noUi-marker-normal {
display: none;
}
.noUi-marker-horizontal.noUi-marker-large {
height: 6px !important;
background: #ccc;
}
.noUi-pips-horizontal {
padding-top: 20px !important;
}
.noUi-value.noUi-value-horizontal.noUi-value-large {
font-size: 16px;
font-weight: normal;
font-stretch: normal;
font-style: normal;
line-height: normal;
letter-spacing: normal;
text-align: center;
color: #ccc;
}
<!-- Шрифты start -->
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Open+Sans&display=swap" rel="stylesheet">
<!-- Шрифты end -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/noUiSlider/14.7.0/nouislider.min.css">
<div class="slider-container">
<input type="text" id="valFromSlider" value="3000">
<div id="slider" class="noui-slider"></div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/noUiSlider/14.7.0/nouislider.min.js"></script>
<!-- Библиотека форматирования, для добавления символа рубля -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/wnumb/1.2.0/wNumb.min.js"></script>