Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.01.2014, 18:16
Аспирант
Отправить личное сообщение для sniffysko Посмотреть профиль Найти все сообщения от sniffysko
 
Регистрация: 20.10.2009
Сообщений: 79

UI Slider блокировать диапазон значений
Есть слайдер с диапазоном значений 6-30. Мне необходимо сделать так, чтобы слайдеры диапазона не сходились на расстояние 2 единиц.
Написал обработчик перемещения типа такого, но не помогает.
slide: function(event, ui){
	if(ui.value + 1 == ui.values[1]){
		$(this).slider( "values", 0, ui.value - 1 );
		return;
	} 
	if(ui.value - 1 == ui.values[0]){
		$(this).slider( "values", 1, ui.value + 1 );
		return;
	}
	$('#val').text(ui.value);					
},
Ответить с цитированием
  #2 (permalink)  
Старый 24.01.2014, 18:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

sniffysko,

<!DOCTYPE HTML>
<html lang="en">

<head>

  <meta charset="utf-8">
  <title>slider demo</title>
  <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/south-street/jquery-ui.css">
  <style>
  #slider-range { margin: 10px; width: 500px }
  </style>

  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

</head>

<body>
<input id="val1">
<input id="val2">
<div id="slider-range"></div>

<script>
$("#slider-range").slider({
    range: true,
	min: 6,
	max: 30,
	values: [12,20],
	animate: true,
	slide: function( event, ui ) {
	   if(ui.values[1] - ui.values[0] < 2 ) return false;
	   $('#val1').val(ui.values[0]);
       $('#val2').val(ui.values[1]);
		}
	});
 $( "#val1" ).val( $( "#slider-range" ).slider( "values", 0 ));
 $( "#val2" ).val( $( "#slider-range" ).slider( "values", 1 ));


</script>
</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 25.01.2014, 15:53
Аспирант
Отправить личное сообщение для sniffysko Посмотреть профиль Найти все сообщения от sniffysko
 
Регистрация: 20.10.2009
Сообщений: 79

Спасибо большое за замечательный ответ.
Код получился проще чем у меня. Я так понял, мое не работало, потому как я делал return, а не return false.
Ответить с цитированием
  #4 (permalink)  
Старый 25.01.2014, 16:26
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от sniffysko
Я так понял, мое не работало, потому как я делал return, а не return false.
вы попробуйте свой вариант и return false, ваше условие изначально неверно, поэтому работать как нужно не будет.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
slider (диапазон цен) tai jQuery 3 05.11.2013 16:24
Настроить диапазон цен для слайдера ? ilyas-> jQuery 3 25.06.2013 09:03
jQuery UI Slider изменяет ширину ползунка SkaN2412 jQuery 1 26.11.2012 13:03
Диапазон значений Harvey jQuery 2 12.09.2011 21:04
Переодическое обновление значений для графика, функция для обновления значений yupa87 Общие вопросы Javascript 0 09.07.2009 14:48