У меня есть этот маленький фрагмент кода, чтобы сделать прокрутку браузера вверху:
$('html, body').animate({scrollTop: 0}, 500, "easeOutQuart");
И я хочу отключить прокрутку пользователя во время работы этого кода и снова включить его после окончания анимации. Как бы Вы это сделали? Какой лучший способ сделать это?
Отключите его непосредственно перед вызовом анимации и включите его в опции обратного вызова анимации:
//Disable here
$('html, body').animate({scrollTop: 0}, 500, "easeOutQuart", function() {
//enable here
});
Вы можете скрыть полосу прокрутки на некоторое время, а затем снова включить
var htmlBody = $('html, body');
htmlBody.css("overflow","hidden")
.animate({
scrollTop: 0
}, 500, "easeOutQuart",function(){
htmlBody.css("overflow","auto");
});
Проверьте этот FIDDLE