Я хочу сделать так, чтобы веб-страница автоматически прокручивалась к определенному элементу, однако я не хочу, чтобы прокрутка позволяла бороться с пользовательским вводом. Если он начинает прокручиваться, а затем прокручивает пользователя, я хочу, чтобы автоматическая прокрутка остановить и позволить пользователю иметь полный контроль.
Поэтому я изначально думал, что могу сделать что-то вроде этого:
var animatable = $('body, html');
animatable.animate({scrollTop: $('#foo').offset()}, 1000);
$(window).scroll(function() { animatable.stop(); });
однако проблема заключается в том, что анимация scrollTop запускает обработчик событий прокрутки для окна! Итак, анимация начинается, а затем останавливается немедленно.
Я ищу способ, которым я могу заставить обработчик событий прокрутки окна останавливаться только в том случае, если он вызван пользовательским вводом... Возможно ли это?