Показать сообщение отдельно
  #8 (permalink)  
Старый 07.01.2019, 18:59
Новичок на форуме
Отправить личное сообщение для bendick Посмотреть профиль Найти все сообщения от bendick
 
Регистрация: 06.01.2019
Сообщений: 6

А вот если у меня 3 слайдера, по сути меняются только классы дивов, а код одинаковый соответственно скрипты начинают путаться, как можно их разделить?


$(document).ready(function(){
	$("#slider2").slider({
		range: "min",
		value: 12,//Значение, которое будет выставлено слайдеру при загрузке
		min: 6,//Минимально возможное значение на ползунке
		max: 60,//Максимально возможное значение на ползунке
		step: 6,//Шаг, с которым будет двигаться ползунок
		slide: onSlide,
		stop : function() {
			$('.block-kol').fadeTo(0,1)  
		}
	});
	$("#slider1").slider({
		range: "min",
		value: 100000,//Значение, которое будет выставлено слайдеру при загрузке
		min: 10000,//Минимально возможное значение на ползунке
		max: 1000000,//Максимально возможное значение на ползунке
		step: 10000,//Шаг, с которым будет двигаться ползунок
		slide: onSlide,
		stop : function() {
			$('.block-kol').fadeTo(0,1)
		}
		
	});
	
	function onSlide(e, ui) {
		$('.block-kol').fadeTo(0, 0.5);
		$(this).closest('.filter-block').find('.right-nomer-value').html(ui.value);
		setTimeout(showItems);
	}
	
	function showItems() {   
		const
		price = $('#slider1').slider('value'),
		days = $('#slider2').slider('value');

	$('.kr-offer').each(function() {
		const $this = $(this);
		$this.toggle(
			price <= parseInt($this.find('.kr-offer-summa').text().replace(/\D/g, '')) &&
			days <= parseInt($this.find('.kr-offer-srok').text().replace(/\D/g, ''))
		);
	});

	$('.no-offer').toggle(!$('.kr-offer:visible').length);
}

showItems();
});

$(document).ready(function(){
	$("#slider4").slider({
		range: "min",
		value: 14,//Значение, которое будет выставлено слайдеру при загрузке
		min: 7,//Минимально возможное значение на ползунке
		max: 60,//Максимально возможное значение на ползунке
		step: 1,//Шаг, с которым будет двигаться ползунок
		slide: onSlide,
		stop : function() {
			$('.block-kol').fadeTo(0,1)  
		}
	});
	$("#slider3").slider({
		range: "min",
		value: 10000,//Значение, которое будет выставлено слайдеру при загрузке
		min: 1000,//Минимально возможное значение на ползунке
		max: 50000,//Максимально возможное значение на ползунке
		step: 500,//Шаг, с которым будет двигаться ползунок
		slide: onSlide,
		stop : function() {
			$('.block-kol').fadeTo(0,1)
		}
		
	});
	
	function onSlide(e, ui) {
		$('.block-kol').fadeTo(0, 0.5);
		$(this).closest('.filter-block').find('.right-nomer-value').html(ui.value);
		setTimeout(showItems);
	}
	
	function showItems() {   
		const
		price = $('#slider3').slider('value'),
		days = $('#slider4').slider('value');

	$('.kr-offer').each(function() {
		const $this = $(this);
		$this.toggle(
			price <= parseInt($this.find('.kr-offer-summa').text().replace(/\D/g, '')) &&
			days <= parseInt($this.find('.kr-offer-srok').text().replace(/\D/g, ''))
		);
	});

	$('.no-offer').toggle(!$('.kr-offer:visible').length);
}

showItems();
});


Так они начинают не корректно работать.
Ответить с цитированием