Я пытаюсь создать пользовательский слайдер с двумя ручками, используя пользовательский интерфейс jQuery. Проблема в том, что правая ручка выходит из контейнера.
Мне известна проблема, причина в том, что маркеры расположены с использованием свойства CSS left
, а поскольку ширина маркеров превышает один пиксель, правый маркер выходит из контейнера.
Я не хочу использовать пользовательский интерфейс слайдера по умолчанию, предоставляемый jQuery, и именно поэтому я борюсь с этим.
Код загружен на JSBin - http://jsbin.com/egoca/edit, скопирован здесь для процветания:
$(document).ready(function(){
var end = parseInt($('#slider_range_slide').attr('minvalue'), 10);
var start = parseInt($('#slider_range_slide').attr('maxvalue'), 10);
$('#slider_bar').slider({
min: 0,
max: 100,
range: true,
values: [0, 100],
animate: true,
slide: function(e, ui) {
var left = $('#slider_bar').slider('values', 0);
var right = $('#slider_bar').slider('values', 1);
$(".slide_dis_l").css("width", left+"%");
$(".slide_dis_r").css("width", (100 - right)+"%");
$("#slider_handle_left").css("left", left+"%");
$("#slider_handle_right").css("right", (100 - right)+"%");
var from = start + (left / 100) * (end - start);
var to = (right / 100) * (end - start);
$('#price_slider_display').text(from + " to " + to);
}
});
});
Любая помощь в исправлении этого будет высоко оценена.