Задать вопрос
@booogabooo

Как побороть closestHandle is undefined?

Пытаюсь реализовать данный пример
На сайте используется jquery 1.6.1
У меня стоит 2.1.4 (другую ставить не предлагайте)
Не работает "ползунок"

Получаю в firebug вот что:
TypeError: closestHandle is undefined

Код:
jQuery("#slider").slider({
	/*min: 0,*/
	/*max: 1000,*/
	values: [0,1000],
	range: true,
	animate: true,
	stop: function(event, ui) {
		jQuery("input#minCost").val(jQuery("#slider").slider("values",0));
		jQuery("input#maxCost").val(jQuery("#slider").slider("values",1));
		
    },
    slide: function(event, ui){
		jQuery("input#minCost").val(jQuery("#slider").slider("values",0));
		jQuery("input#maxCost").val(jQuery("#slider").slider("values",1));
    }
});

jQuery("input#minCost").change(function(){

	var value1=jQuery("input#minCost").val();
	var value2=jQuery("input#maxCost").val();

    if(parseInt(value1) > parseInt(value2)){
		value1 = value2;
		jQuery("input#minCost").val(value1);
	}
	jQuery("#slider").slider("values",0,value1);	
});

	
jQuery("input#maxCost").change(function(){
		
	var value1=jQuery("input#minCost").val();
	var value2=jQuery("input#maxCost").val();
	
	if (value2 > 1000) { value2 = 1000; jQuery("input#maxCost").val(1000)}

	if(parseInt(value1) > parseInt(value2)){
		value2 = value1;
		jQuery("input#maxCost").val(value2);
	}
	jQuery("#slider").slider("values",1,value2);
});



// фильтрация ввода в поля
	jQuery('input').keypress(function(event){
		var key, keyChar;
		if(!event) var event = window.event;
		
		if (event.keyCode) key = event.keyCode;
		else if(event.which) key = event.which;
	
		if(key==null || key==0 || key==8 || key==13 || key==9 || key==46 || key==37 || key==39 ) return true;
		keyChar=String.fromCharCode(key);
		
		if(!/\d/.test(keyChar))	return false;
	
	});


});


Как исправить проблему?
Гуглил, местами предлагают сделать явную проверку на целочисленный тип (стаковерфлоу смотрел, есть множество решений, но либо я не могу под свое запилить, либо у меня в другом месте проблема)

UPD: Ссылка
UPD2: Решил другим образом. В примере использовалась отдельная библиотека. Я поставил полный jquery-ui и все пошло (там скорее всего проблема в версиях была, так как туториал 11 года)
  • Вопрос задан
  • 521 просмотр
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
allard
@allard
Серийный программист
Дак если рекомендуют, сделайте =)
....
jQuery("#slider").slider("values",0,parseInt(value1));	
....
jQuery("#slider").slider("values",1,parseInt(value2));


А так, без целикового примера страницы не разберешься.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы