Показать сообщение отдельно
  #1 (permalink)  
Старый 16.02.2017, 21:21
Интересующийся
Отправить личное сообщение для sim4ik-one Посмотреть профиль Найти все сообщения от sim4ik-one
 
Регистрация: 02.11.2015
Сообщений: 23

Событие при скроле
Здравствуйте! Помогите, пожалуйста, чайнику.
Есть скрипт для прогресс бара:
$(".dial").knob();
	$({animatedVal: 0}).animate({animatedVal: 100}, {
		duration: 2000,
		size: 230,
		easing: "swing",
		step: function() { 
			$(".dial").val(Math.ceil(this.animatedVal)).trigger("change"); 
}   
});

Сам прогресс бар находится в блоке с классом "about"
<section class="about" id="about">
</section>

Подскажите, как сделать так, что бы сам скрипт выполнялся только при прокрутке к блоку с классом "about"
Пытался сделать так:
$(function () {  
	$(window).scroll(function() {
		if ($(this).scrollTop()> 1550) {
	$(".dial").knob();
	$({animatedVal: 0}).animate({animatedVal: 100}, {
		duration: 2000,
		size: 230,
		easing: "swing",
		step: function() { 
			     $(".dial").val(Math.ceil(this.animatedVal)).trigger("change"); 
	}   
	});
        }
    });
});

Вроде как и работает, но когда проходит эти 1550 пикселей и скролится дальше, то на каждый пройденный пиксель ниже анимация срабатывает заново, а повторятся больше не должна

Последний раз редактировалось sim4ik-one, 16.02.2017 в 21:30.
Ответить с цитированием