Управление полосой прокрутки | Используйте его, чтобы заблокировать область просмотра для определенных элементов или мест после того, как пользователь завершил прокрутку - PullRequest
0 голосов
/ 05 августа 2020

Должен быть способ проверить, управляется ли полоса прокрутки пользователем и запускаются ли на ней события мыши, иначе как они сделали CSS Scroll Snap Specification

Позвольте мне объяснить проблему. Я пытаюсь найти решение, при котором, если вы прокручиваете или прокручиваете мышью вниз, область просмотра переместится на следующую страницу (элемент) в строке. Если вы прокрутите вниз, вы go на одну страницу вниз, если вы прокрутите вверх, вы go на предыдущую страницу вверх. Для точного примера проверьте сайт Blizzards Diablo 4

Я считаю, что этого можно легко добиться с помощью element.scrollIntoView() и объекта для сохранения следующей страницы и т.д. c. Однако вторая часть проблемы заключается в том, что у них нет полосы прокрутки, а у меня есть. И мне нужен способ прикрепить события к полосе прокрутки или проверить, продолжает ли пользователь прокручивать полосу, потому что, когда прокрутка останавливается, я хочу переместить всю область просмотра к ближайшему элементу. (на основе центра моего окна просмотра. Какой бы элемент ни находился ближе всего к центру окна просмотра)

Это то, что я сделал, но я хочу его улучшить. Я понимаю, что мне, возможно, придется поиграть с этим примерно неделю, так как он намного выше моего уровня, но давайте посмотрим. Может быть, кто-то еще копался в этом?

По какой-то причине размещение примера кода здесь не сработало, поэтому я использовал codepen https://codepen.io/Knightwalker/pen/zYqYzWV

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...