Задать вопрос
zloycoder
@zloycoder
Разработка веб-сайтов на заказ

Почему возникает «неровная прокрутка»?

Почему возникает "неровная прокрутка" к элементам по якорю?
Помогите, пожалуйста решить данную проблему.
Перейти на сайт с проблемой
С уважением.
  • Вопрос задан
  • 124 просмотра
Подписаться 2 Простой 5 комментариев
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@alexalexes
Анимация прокрутки происходит всегда за фиксированное время (сейчас 500 мс).
Если top получается 100 пикселей, то промотка будет казаться медленней, а если 1000 пикселей - то быстро.
А нужно сделать так, чтобы время анимации было пропорционально длине "прыжка".
var anim_speed = 300; // пикселей в секунду
var anim_time = (top * 1000) / anim_speed; // 1000 - поправка на милисекунды
//анимируем переход на расстояние 
$('body,html').animate({scrollTop: top}, anim_time);

PS: Обычная школьная формула по физике: время равно расстоянию деленное на скорость.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы