Плавный скролл - не получается сделать, наподобии как в "эмулировать бездействие"



  • test-plavny-scroll.xml Простите, понимаю, возможно уже всех утомил своими вопросами.
    Получаю document.documentElement.scrollTop
    и хочу скроллить плавно вниз на несколько экранов, настолько плавно как это делает кубик "эмулировать бездействие".

    Пишем цикл,
    document.documentElement.scrollTop = Y1
    к полученному прибавляем высоту экрана = height
    newpoz = Y1+height +50px
    прокрутка в 1,newpoz

    2 часа маюсь, где косяк, подскажите, пожалуйста?



  • Можно использовать JS функцию

    window.scrollTo({top: y, behavior: 'smooth'});
    

    Но её плавность зависит от различия текущего и будущего y

    Вот костыльный, но +- плавный скролл scroll.xml. Можно поиграться с задержками и разницей переменных



  • Спасибо.
    По данной теме у меня новый вопрос, подскажите пожалуйста, почему document.documentElement.scrollTop отдает не число, а строку. Значение в "". Каждый раз приходится переконвертировать в число.



  • @kuzkuz
    efd88751-9f15-4b8f-9860-e5e8f203fd51-image.png
    Может это уже бас преобразует в строку



  • @Katant Попробовал как Вы написали typeof(document.documentElement.scrollTop)"number"
    нет. Не хочет. Вообще результат пустой ""
    Ладно, буду переводить после получения значения.



  • @kuzkuz этот код показывает что функция выдает число, его выполнять не надо


Log in to reply