Улучшение производительности прокрутки с помощью пассивных прослушивателей событий

Пассивные прослушиватели событий, впервые появившиеся в Chrome 51, представляют собой новый веб-стандарт, который потенциально значительно повышает производительность прокрутки, особенно на мобильных устройствах. Посмотрите видео ниже, чтобы наглядно увидеть улучшения в действии:

Как это работает

Когда вы прокручиваете страницу и происходит такая задержка, что страница не чувствуется привязанной к вашему пальцу, это называется рывком при прокрутке. Часто, когда вы сталкиваетесь с зависанием прокрутки, виновником является прослушиватель событий касания. Прослушиватели событий касания часто полезны для отслеживания действий пользователя и создания пользовательских возможностей прокрутки, например полной отмены прокрутки при взаимодействии со встроенной картой Google. В настоящее время браузеры не могут знать, собирается ли прослушиватель событий касания отменить прокрутку, поэтому они всегда ждут завершения прослушивателя, прежде чем прокручивать страницу. Пассивные прослушиватели событий решают эту проблему, позволяя вам установить флаг в параметре options addEventListener , указывающий, что прослушиватель никогда не отменит прокрутку. Эта информация позволяет браузерам прокручивать страницу сразу, а не после того, как прослушиватель завершит работу.

Узнать больше

Посетите блог Chromium, чтобы получить общий обзор того, как работают пассивные прослушиватели событий:

Новые API, которые помогут разработчикам улучшить производительность прокрутки

И репозиторий спецификации, чтобы узнать, как реализовать пассивные прослушиватели событий:

Объяснение прослушивателя пассивных событий