Skip to content

Instantly share code, notes, and snippets.

@adammiribyan
Created January 14, 2011 01:10
Show Gist options
  • Save adammiribyan/778972 to your computer and use it in GitHub Desktop.
Save adammiribyan/778972 to your computer and use it in GitHub Desktop.
$("#price-selector").html(labels); // Замещаем статичное содержимое блока
$('#price-value').html(': любая'); // Подставляем цену в поле, так как по умолчанию выбираем максимальное значение ползунка
// Слайдер сделан на основе стандартного компонента jQueriUI
$(function() {
$("#price-selector").slider({
range: "min",
value: 100,
min: 0,
max: 100,
slide: function(event, ui) {
var value = null; // Значение ценц — число
var price = null; // Подпись цены (моежт быть строкой)
// Далее идёт кусочно-линейная зависимость цены от положения бегунка
switch (Math.floor(ui.value/20)){
case 0:
value = 150 + Math.round(150*ui.value/20);
price = ': '+value + '<span class="half-space"> </span>000 <span class="rub rub_13">Р<i>–</i></span>';
if (ui.value == 0){
value = 0;
price = ': ≤<span class="half-space"> </span>150<span class="half-space"> </span>000 <span class="rub rub_13">Р<i>–</i></span>';
}
break;
case 1:
case 2:
case 3:
value = 250 + Math.round(750*(ui.value-20)/60);
price = ': '+value + '<span class="half-space"> </span>000 <span class="rub rub_13">Р<i>–</i></span>';
break;
case 4:
value = 1000 + Math.round(2000*(ui.value-80)/20);
price = ': '+value + '<span class="half-space"> </span>000 <span class="rub rub_13">Р<i>–</i></span>';
break;
case 5:
value = 100000;
price = ': любая';
break;
}
$('#price-value').html(price); // Подставляем значение строки
// !!! Здесь же нужно будет подставить цену в ту форму или в тот запрос, который будет взаимодействовать с сервером
}
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment