только js. Я просто запоминаю текущую прокрутку и при событии scroll перемещаю документ на те координаты, которые запомнил.
Все вроде бы работает, но происходят подёргивания страницы при скролле, т.е. , например, скроллишь вниз и ты видишь этот момент, как страница опустилась и моментально вернулась в исходное состояние.
Как можно этого избежать?
Вот в ютубе, когда открываешь окошко с уведомлениями или меню из шапки, то страницу нельзя прокручивать и нет таких подёргиваний как у меня, выходит там как-то по другому сделано
можешь preventDefault на скрол повешать
но это убивает любой скрол, в каких-нибудь модалках, в которых контента слишком много, это все ломает
На скролл нельзя повесить preventDefault
да, я с touchmove спутал
а в чем проблема с css?
Полоса прокрутки скрывается таким образом и контент двигается. Только в этом
можно паддинг\марджин добавлять на ширину скроллбара, чтобы контент не дергался
у ютуба кроме scroll еще обработчики на wheel и mousewheel
Это как вариант можно использовать, но мне все же нужно чтоб это все работало без css
Хм, тоже пытался почитать их код, но вот про последние два события даже не подумал, попробую что-нибудь с ними поделать. Спасибо
как я понял, в них ничего особого не происходит - просто превент и координаты записываются
Обсуждают сегодня