, поэтому кажется, что вам нужно сделать видимыми определенные пункты.Просто для информации;ползунок всегда имеет значения, но CSS скрывает их.Так что нам просто нужно сделать правильные пипсы видимыми.
Шаги:
- выяснить правильные значения (предложите поместить их как html-данные)
- добавить cssClass к этим значениям
- использовать css для отображения правильных пипсов (соответственно стиль)
Во-первых, я немного исправил ваш JS, чтобы вы использовалиfloat
Плагин для пипсов для отображения значений на ручках слайдера.Это будет немного надежнее, чем ваше решение.$(".slider").slider("float");
Вы можете прочитать об этом здесь;https://simeydotme.github.io/jQuery-ui-Slider-Pips/#options-float
окончательный код js:
$(function() {
// here we assume 4 sliders all with the same css class
var $sliders = $(".painSlider");
$sliders.each( function(k, el) {
var $slider = $(el);
var previousValue = $slider.data( "previous" );
// handle different labels for best/worst
var firstLabel = $slider.hasClass( "bestWorst" ) ? "Best Imaginable" : "No Symptoms";
var lastLabel = $slider.hasClass( "bestWorst" ) ? "Worst Imaginable" : "Worst Symptoms";
$slider.slider({
min: 0,
max: 10,
value: 0,
animate: "fast"
})
.slider("pips", {
labels: {
first: firstLabel,
last: lastLabel
}
})
.slider("float")
// add a css class to the correct values
// so that we can style them to be shown
.find(".ui-slider-pip")
.eq( previousValue )
.find( ".ui-slider-label" )
.addClass( "previous-value" );
});
});
, а затем нужно применить немного CSS;
/* this is the magic to show the value */
.ui-slider-label.previous-value {
display: block;
}
/* these two styles are to show the "float"
labels inside the handle, instead of using
your own custom handle-text. */
.ui-slider-tip {
visibility: visible!important;
opacity: 1!important;
transform: none!important;
position: static!important;
background: transparent!important;
border: none!important;
color: white!important;
margin: auto!important;
width: auto!important;
}
.ui-slider-tip::before,
.ui-slider-tip::after {
display: none!important;
}
полностью,рабочий код, здесь можно посмотреть;https://jsfiddle.net/vzw53dge/