Не по этой теме но все же. В чем может быть проблема, если при одном скролле (100px) сразу делает анимацию
$(document).ready(function() {
$(window).scroll(function() {
if ($(window).scrollTop() > 5600){
$('.links').animate({color: '#000'});
$('#headerDiv').animate({backgroundColor: 'rgba(0, 0, 0, 0.2)'}, 500);
}
else{
$('.links').animate({color: '#fff'});
$('#headerDiv').animate({backgroundColor: 'rgba(255, 255, 255, 0.2)'}, 500);
}
});
});
Эпик Прогер: тут дело в том что на каждый скрол выполяются эти операции, а они тяжеленькие. Есть функция паттерн называется Debouncing, почитать тут https://habrahabr.ru/post/60957/, поможет нам не выполнять код много раз, тоесть у вас ситуация такая что на 100 пикселей скрола ваш код выполняется 100 раз. Debouncing поможет избежать этого
Никита: знаю что очень глупые вопросы задаю, но я все атки не могу понять. как к моему коду применить функцию debounce. $('input').on('input', $.debounce(function(e){
// обрабатываем ввод текста только после того,
// как пользователь перестанет вводить текст на 300ms
}, 300)); Как мне подстроить под себя этот код? Я понимаючто обнаглел но вообще не врубаю как