Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.07.2014, 18:46
Интересующийся
Отправить личное сообщение для CRYSIS_STALKER Посмотреть профиль Найти все сообщения от CRYSIS_STALKER
 
Регистрация: 19.03.2014
Сообщений: 10

Ползунок с переменным шагом
Добрый день, помогите сделать слайдер (ползунок) первое значение 0, второе - 100 000, третье - 300 000, четвёртое - 750 000, пятое - 1 500 000, шестое - 3 000 000. Ползунок должен быть плавным. Все шесть значений находятся на одинаковом расстоянии друг от друга. Ответ выводится в поле input.
Ответить с цитированием
  #2 (permalink)  
Старый 10.07.2014, 19:33
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

CRYSIS_STALKER,
и в чём сложность?
Ответить с цитированием
  #3 (permalink)  
Старый 10.07.2014, 19:38
Аватар для MallSerg
Профессор
Отправить личное сообщение для MallSerg Посмотреть профиль Найти все сообщения от MallSerg
 
Регистрация: 07.03.2011
Сообщений: 1,127

Тебе просто нужно изменить линейное значение в соответствии с определенной функцией
страница готовых рецептов http://learn.javascript.ru/js-animation
Ответить с цитированием
  #4 (permalink)  
Старый 10.07.2014, 19:40
Интересующийся
Отправить личное сообщение для CRYSIS_STALKER Посмотреть профиль Найти все сообщения от CRYSIS_STALKER
 
Регистрация: 19.03.2014
Сообщений: 10

В том что по умолчанию получается линейная зависимость, а необходимо чтобы 1 500 000 было ближе к 3 000 000. Т.е. у меня получается я навожу на 1 500 000 - а в input выводится 2 400 000
Ответить с цитированием
  #5 (permalink)  
Старый 10.07.2014, 19:46
Аватар для MallSerg
Профессор
Отправить личное сообщение для MallSerg Посмотреть профиль Найти все сообщения от MallSerg
 
Регистрация: 07.03.2011
Сообщений: 1,127

1. получаешь линейное значение
2. Применяешь функцию к линейному значению
3. Получаешь результат работы функции в виде не линейного значения
4. Используешь полученный результат где тебе нужно
Ответить с цитированием
  #6 (permalink)  
Старый 10.07.2014, 19:48
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

CRYSIS_STALKER,
это можно превратить в то что вам требуется http://jqueryui.com/slider/#hotelrooms за ... минут
Ответить с цитированием
  #7 (permalink)  
Старый 11.07.2014, 11:29
Интересующийся
Отправить личное сообщение для CRYSIS_STALKER Посмотреть профиль Найти все сообщения от CRYSIS_STALKER
 
Регистрация: 19.03.2014
Сообщений: 10

Я не разобрался, вот код. Нужно чтобы по мере продвижения бегунка значение шага менялось в 4 точках. Например: движется бегунок и через 2 см шаг увеличился.

<script>
$("#slider-range").slider({
range: "min",
min: 0,
max: 3000000,
value: 1000,
step: 10000,
slide: function( event, ui ) {
$( "#amount" ).val( "" + ui.value + "" );
}
});
$( "#amount" ).val( "" + $( "#slider-range" ).slider( "value" ));
</script>
Ответить с цитированием
  #8 (permalink)  
Старый 11.07.2014, 11:39
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

CRYSIS_STALKER,
подсказка
min: 0,
max: 5,
value: 1,
step: 1,
Ответить с цитированием
  #9 (permalink)  
Старый 11.07.2014, 11:41
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

CRYSIS_STALKER,
конечно если я вас правильно понимаю и вам нужны всего 6 значений
Ответить с цитированием
  #10 (permalink)  
Старый 11.07.2014, 11:56
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

CRYSIS_STALKER,

<!doctype html>

<html lang="en">

<head>

  <meta charset="utf-8">

  <title>jQuery UI Slider - Slider bound to select</title>

  <link rel="stylesheet" href="http://code.jquery.com/ui/1.11.0/themes/smoothness/jquery-ui.css">

  <script src="http://code.jquery.com/jquery-1.10.2.js"></script>

  <script src="http://code.jquery.com/ui/1.11.0/jquery-ui.js"></script>
  <style type="text/css">
  #slider{
    width: 500px;
    margin: 20px;
  }

  </style>


  <script>

  $(function() {
    var arr = [0,100000,300000,750000,1500000,3000000];
    var input = $( "#minbeds" );

    var slider = $( "<div id='slider'></div>" ).insertAfter( input ).slider({

      min: 0,

      max: 5,

      range: "min",
      animate: true ,

      change: function( event, ui ) {

        input.val(arr[ui.value]) ;

      },

      slide: function( event, ui ) {

        input.val(arr[ui.value]) ;

      }

    });

   slider.slider( "option", "value", 2 );

  });

  </script>

</head>

<body>



<form id="reservation">

  <label for="minbeds">$</label>

  <input name="minbeds" id="minbeds">

</form>





</body>

</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jQuery UI Range slider как заблокировать левый ползунок по первому клику Oleg_Pupkin jQuery 3 04.09.2013 13:44
ползунок для сайта MadChild Общие вопросы Javascript 5 18.04.2013 19:09
JqueryUI Slider и широкий ползунок TheKIP Элементы интерфейса 1 25.10.2012 22:22
слайдер ползунок cyber Events/DOM/Window 3 10.05.2012 16:57
userJS доступ к переменным страницы (Chrome) DragorWW Opera, Safari и др. 2 13.07.2011 15:33