Не работает плавная прокрутка страницы стрелками

Советы о том, как работать с плавной прокруткой в ​​веб-браузере

Есть люди, которым действительно нравится плавная прокрутка при использовании веб-браузера на рабочем столе. Фактически, последний Firefox 16 устанавливается с включенным по умолчанию и имеет версию 15.

Гладкая прокрутка — это хорошо?

Я не определяю плавную прокрутку как «хорошую» или «плохую», потому что все сводится к тому, что вы предпочитаете видеть на экране во время прокрутки.

Что я скажу, так это то, что при включенной плавной прокрутке некоторые веб-страницы легче читать. Традиционный метод прокрутки «прыжок за линией» иногда может привести к потере места при чтении текста на экране, тогда как при плавной прокрутке вы не потеряете свое место…

…главным образом, При использовании плавной прокрутки вы должны сделать что-то немного другое, чтобы привыкнуть к нему.

Использование клавиш со стрелками вверх / вниз на клавиатуре

Это, без сомнения, лучший способ использовать плавную прокрутку в настольном веб-браузере. Строки, которые прокручиваются всякий раз, когда вы используете вверх / вниз, выполняются «цивилизованным» способом, где это нарочно немного медленнее и плавнее при их использовании.

Единственное, в чем вы должны убедиться, это то, что браузер в настоящее время находится в фокусе, чтобы использовать клавиши со стрелками вверх / вниз, иначе прокрутка не будет работать вообще; это легко сделать, просто щелкнув один раз в любом месте текущего окна браузера, и затем вы можете перейти вверх / вниз к своему сердцу.

Использование колесика мыши

К сожалению, для большинства настольных браузеров использование колесика мыши в браузере с включенной плавной прокруткой — всего лишь кошмар. Почему? Потому что большую часть времени он «слишком много прокручивает». В то время как с помощью клавиш со стрелками вверх / вниз вы имеете цивилизованную прокрутку, колесо чаще всего заставляет вашу веб-страницу совершать прыжок с прокруткой, почти до такой степени, что ее невозможно использовать.

Если вы используете браузер Firefox, к счастью, есть способ, которым вы можете установить линии прокрутки вручную (слава Богу), чтобы заставить прокрутку действовать цивилизованно.

Число строк прокрутки по умолчанию, которое Firefox использует при использовании колесика мыши, равно 6. Скорее всего, вы захотите снижение это число, чтобы «замедлить» прокрутку вниз, и вы можете сделать это, изменив две настройки:

1. Откройте адрес о: конфигурации в вашей адресной строке.

2. В поле поиска введите mousewheel.withnokey.sysnumlines

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

4. В поле поиска введите mousewheel.withnokey.numlines

5. Значение по умолчанию — 6. Дважды щелкните и измените его на 1.

Откройте другую вкладку, загрузите веб-страницу, где вам нужно прокрутить и опробовать колесо мыши. Вы заметите, что скорость прокрутки намного «медленнее» при установке на 1. Если она слишком медленная, вернитесь на другую вкладку и измените значение чисел на 2, затем вернитесь на другую вкладку и попробуйте снова прокрутить.

В конце концов, вы найдете счастливую среду, которая соответствует вашей предпочтительной скорости прокрутки. Это будет где-то между 1 и 5.

Использование сенсорной панели / трекпада (ноутбук)

Когда дело доходит до прокрутки с включенной плавной прокруткой, трекпад может стать кошмаром для работы. У очень немногих портативных компьютеров есть трекпад, скорость краевой прокрутки которого установлена ​​на то, что большинство людей считают «нормальным».

У вас есть два способа более цивилизованной прокрутки с помощью трекпада. Либо вы используете само программное обеспечение для настройки трекпада («попало или нет»), либо вы используете тот же метод Firefox, что и выше, чтобы замедлить скорость прокрутки.

Я скажу по-другому. Если прокрутка трекпада «отлично работает везде, кроме браузера», используйте метод Firefox. Если, с другой стороны, прокрутка слишком быстрая где угодно, затем вы должны изменить настройку скорости прокрутки с помощью программного обеспечения трекпада.

Как включить плавную прокрутку в популярных веб-браузерах

Включено по умолчанию. Можно отключить через «Меню Firefox»> «Параметры»> «Дополнительно» (вкладка) и снимите флажок «Использовать плавную прокрутку»

В Google Chrome

Это скрытая настройка. Загрузите адрес о: флагии там вы увидите опцию плавной прокрутки. Включите и перезапустите браузер.

В Internet Explorer 9:

Очень похоронен, но доступен. Перейдите в Инструменты> Свойства обозревателя> Дополнительно (вкладка)> Использовать плавную прокрутку (флажок).

В заключение отметим, что Firefox — единственный известный мне браузер, в котором строки прокрутки можно установить вручную, как указано выше. Это может быть возможно сделать в Chrome, но не без какого-либо дополнения / расширения. А что касается IE9, этот браузер подчиняется любым системным настройкам для прокрутки и, насколько мне известно, не может быть изменен непосредственно в браузере.

Источник

Что такое плавная прокрутка и как ее включить / отключить? —

Возможно, вы слышали термин плавная прокрутка в интернете и интересно, что именно это? Если вы не уверены, плавная прокрутка, как видно из ее названия, — это функция, которая позволяет плавно прокручивать. Обычная / нормальная прокрутка немного прерывистая и может внезапно остановиться.

Вот почему основные приложения, такие как Google Chrome, представили новую функцию, называемую плавной прокруткой. Когда включена плавная прокрутка, вы заметите, что прокрутка намного плавнее, и она не остановится внезапно, когда вы прекратите прокрутку, а просто прокрутите немного мимо точки прокрутки, что сделает прокрутку намного более плавной.

Лучший способ описать плавную прокрутку — сравнить обычную прокрутку мыши с прокруткой при нажатии колеса прокрутки. Если вы нажмете колесо прокрутки мыши, вы можете перемещать мышь вверх / вниз, и прокрутка будет очень плавной. Включение плавной прокрутки позволяет вам прокручивать так же, как при обычной прокрутке колесика. Плавная прокрутка также полезна с сочетаниями клавиш.

Читайте также:  Что делать если не работает клавиша esc

Когда эта функция включена, нажатие кнопки «Page Down» не просто прыгнет вниз на одну страницу. При плавной прокрутке он плавно скользит вниз, чтобы вы могли видеть, сколько он прокручивает.

Это может быть не очень важно для вас, но это важно для пользователей, которые читают много длинных страниц. Неустойчивая прокрутка может раздражать многих пользователей, и поэтому люди переходят к опции плавной прокрутки.

Что такое плавная прокрутка и как ее включить / отключить?

Как включить плавную прокрутку?

Наиболее распространенное использование прокрутки (в целом) в Интернете при чтении содержимого веб-страницы. Вот почему браузеры находятся на переднем крае, когда речь идет о плавной прокрутке. Существуют различные способы включения плавной прокрутки в зависимости от браузера, который вы используете.

Включить плавную прокрутку в Google Chrome

Замечания: Плавная прокрутка — экспериментальная функция в Google Chrome. Это означает, что он нестабилен и может вызвать нежелательные эффекты для вашей системы или Google Chrome. Итак, включите эту функцию на свой страх и риск.

Вот шаги для включения плавной прокрутки в Google Chrome.

  1. открыто Гугл Хром
  2. Тип хром: // флаги / # гладкая прокрутка и нажмите Войти

плавная прокрутка флаг Google Chrome

  1. Вы должны увидеть флаг плавной прокрутки в верхней части страницы.
  2. Выбрать Включено от выпадающее меню

плавная прокрутка включена

  1. Нажмите Перезапустить сейчас

Это должно включить плавную прокрутку в Google Chrome. Если вам не нравится эта функция или вы просто хотите отключить ее, просто следуйте инструкциям, приведенным выше, и выберите «Отключено» в раскрывающемся меню на шаге 4.

Включить плавную прокрутку в Firefox

Вот шаги для включения плавной прокрутки в Firefox.

  1. открыто Браузер Firefox
  2. Тип о: предпочтения в адресной строке и нажмите Войти
  3. Прокрутите вниз до просмотр раздел
  4. Проверьте коробка Используйте плавную прокрутку

Как включить плавную прокрутку в Firefox

Это оно. Это должно включить плавную прокрутку для Firefox.

Замечания: Если вам кажется, что плавная прокрутка в Firefox не является плавной, вам, возможно, придется настроить несколько параметров, чтобы сделать ее более плавной. Внимательно следуйте инструкциям и не меняйте никакие другие значения.

  1. Откройте Firefox
  2. Тип о: конфигурации в адресной строке и нажмите Войти

исправить сглаживание прокрутки в Firefox

  1. Теперь вы сможете увидеть список различных флагов и настроек. Тип smoothScroll.currentVelocityWeighting в строке поиска

изменить значение general.smoothScroll.currentVelocityWeighting

  1. Вы должны увидеть только одну запись из списка. Двойной щелчок это и изменить значение на .
  2. Нажмите Хорошо

измените значение general.smoothScroll.currentVelocityWeighting на 0

  1. Тип smoothScroll.mouseWheel.durationMaxMS в строке поиска

выберите флаг general.smoothScroll.mouseWheel.durationMaxMS

  1. Двойной щелчок запись и измените значение на 250
  2. Нажмите Хорошо

Измените значение general.smoothScroll.mouseWheel.durationMaxMS на 250

  1. Тип smoothScroll.stopDecelerationWeighting в строке поиска

Выберите флаг general.smoothScroll.stopDecelerationWeighting

  1. Двойной щелчок запись и измените значение на 82
  2. Нажмите Хорошо

Измените значение general.smoothScroll.stopDecelerationWeighting на 0,82

  1. Тип min_line_scroll_amount в строке поиска

Выберите флаг mousewheel.min_line_scroll_amount

  1. Двойной щелчок запись и измените значение на 25
  2. Нажмите Хорошо

Измените значение mousewheel.min_line_scroll_amount на 25

Это оно. Убедитесь, что это делает прокрутку более гладкой или нет. Вы можете попытаться немного изменить значения, чтобы увидеть, улучшает ли это прокрутку, но делайте это только в том случае, если вы уверены в том, что делаете.

Включить плавную прокрутку по краю

Следуйте инструкциям ниже, чтобы включить плавную прокрутку в Edge

  1. Держать Ключ Windows и нажмите р
  2. Тип systempropertiesadvanced и нажмите Войти

Расширенные свойства системы

  1. Нажмите настройки от Спектакль раздел

Расширенные настройки производительности

  1. Проверьте коробка списки с плавной прокруткой

Включить списки с плавной прокруткой

  1. Нажмите Применять затем выберите Хорошо
  2. Нажмите Хорошо снова

Это должно включить плавную прокрутку для браузера Edge.

Источник

Прокрутка в вебе: букварь

Автор — Нолан Лоусон, менеджер проекта Microsoft Edge

Прокрутка — одно из самых древних взаимодействий в вебе. Задолго до появления методов pull-to-refresh и списков бесконечной загрузки скромная полоса прокрутки решила изначальную проблему масштабирования в вебе: как взаимодействовать с контентом, который распространяется за пределы доступной области просмотра?

Сегодня прокрутка всё ещё остаётся самым фундаментальным взаимодействием в Сети, и, возможно, самым неправильно понятым. Например, вы знаете разницу между следующими сценариями?

  • Пользователь прокручивает страницу двумя пальцами на тачпаде
  • Пользователь прокручивает одним пальцем на тачскрине
  • Пользователь прокручивает колесо мыши
  • Пользователь щёлкает по полосе прокрутки и тянет её вниз и вверх
  • Пользователь нажимает стрелки «вверх», «вниз», PageUp, PageDown и «пробел» на клавиатуре

Если спросите среднего интернет-пользователя (или даже среднего веб-разработчика!), они могут сказать вам, что эти действия равнозначны. Правда гораздо более интересна.

Как выясняется, эти пять методов ввода имеют очень разные характеристики, особенно в части производительности и кроссбраузерной совместимости. Некоторые из них (как прокрутка по тачскрину) вероятно будут плавными даже на странице с использованием тяжёлых JavaScript, в то время как от других (как прокрутка с клавиатуры) та же самая страница будет лагать и станет невосприимчивой. Более того, некоторые виды прокрутки можно замедлить обработчиками событий DOM, а другие нельзя. Что здесь происходит?

Чтобы ответить на этот вопрос и понять, как реализовать наиболее плавную прокрутку для своего сайта, отступим на шаг понять и разберёмся, как браузеры разбираются с многопоточностью и вводом.

Многопоточный веб

Концептуально, веб является однопоточной средой. JavaScript блокирует DOM, а DOM блокирует JavaScript, потому что оба борются за один и тот же поток, часто называемый «основным потоком» или «потоком UI».

Например, если вы добавите этот (ужасный) сниппет JavaScript на страницу, то немедленно заметите ухудшение в работе:

Пока этот JavaScript крутится в бесконечном цикле, кнопки не работают, элементы форм не реагируют и даже анимированные GIF’ки тормозят — во всех смыслах и отношениях страница зависла. Можете изучить эффект в действии в простом демо.

Более того, если вы попытаетесь прокрутить страницу клавишами «вверх» и «вниз» на клавиатуре, страница предсказуемо застрянет, пока JavaScript не прекратит выполнение. Всё это явные свидетельства нашего представления веба как однопоточной среды.

Читайте также:  Как настроить наушники редми 8 про

Есть забавная аномалия: если попробовать прокрутку через тачскрин, то страница отлично прокручивается вверх и вниз, хотя JavaScript и блокирует всё остальное на странице. То же самое относится к прокрутке с тачпада, колесом мыши и прокрутке после захвата страницы курсором click-and-drag (в зависимости от браузера).

Каким-то образом некоторые действия по прокрутке могут изменять состояние страницы, в то время как всё остальное — кнопки, поля ввода данных, GIF’ы — полностью зависло. Как мы можем совместить это с нашей теорией однопоточного веба?

История двух потоков выполнения

Как выясняется, в целом тезис «браузеры однопоточные» правдив, но есть важные исключения. Прокрутка, во всём своём многообразии, является одним из таких исключений.

С годами разработчики браузеров осознали, что выгрузка вспомогательной работы в фоновые потоки может дать значительную выгоду по плавности работы и чувствительности. Прокрутка настолько важна для ключевого опыта работы с браузером, что эту задачу быстро выбрали для такой оптимизации. В наше время все основные браузерные движки (Blink, EdgeHTML, Gecko, WebKit) поддерживают прокрутку за пределами основного потока выполнения в той или иной степени (Firefox последним присоединился к клубу, с версии Firefox 46).

С фоновой прокруткой даже загромождённая страница будет плавно прокручиваться, потому что вся прокрутка выполняется в отдельном потоке. Только если вы попытаетесь взаимодействовать со страницей через некий посторонний механизм, не связанный с прокруткой — нажать клавишу, ввести данные в поле ввода, нажать на ссылку — тогда фасад сбрасывается и суть салонного трюка полностью раскрывает себя. (Учитывая, насколько хорошо он работает, это отличный трюк!)

Правда, у асинхронной прокрутки есть распространённый побочный эффект, который называют эффектом шахматной доски (checkerboarding). Он впервые проявился на в Safari для iOS в виде серых и белых клеток, словно с шахматной доски. В большинстве современных браузеров эффект проявляется как пустое пространство на экране, если вы осуществляете прокрутку быстрее, чем браузер может отрисовать страницу. Это не идеально, но это приемлемый компромисс, по сравнению с заблокированной, дёргающейся или неоткликающейся прокруткой.

К сожалению, не всегда можно легко перенести прокрутку в фоновый поток выполнения. Браузеры могут сделать это только в том случае, если операционная система допускает одновременный ввод, и это может варьироваться от устройства к устройству. В частности, ввод с клавиатуры не настолько оптимизирован, как ввод с мыши или тач-устройств, что в конечном счёте ведёт к более значительным лагам при вводе с клавиатуры во всех браузерах.

Здесь будет поучительной небольшая история. Когда впервые вышли операционные системы вроде Windows и macOS, они допускали только один поток выполнения, и мало кто предвидел необходимость предусмотреть одновременный ввод. Только когда появились многоядерные машины, операционные системы начали встраивать параллелизм в свою архитектуру.

Также как рудиментарные органы животных дают понять их эволюционную историю, однопоточное происхождение операционных систем проявляет себя, если посмотреть на способы прокрутки в вебе. Только если операционная система допускает параллельный ввод — с мыши, клавиатуры или другого устройства — браузеры могут эффективно оптимизировать прокрутку, чтобы на неё не влияло длительное выполнение JavaScript, захламившего основной поток выполнения.

Однако в группе разработки Microsoft Edge мы делаем успехи, чтобы гарантировать плавный и восприимчивый скроллинг, независимо от его метода. В EdgeHTML 14 (который вошёл в состав Windows 10 Anniversary Update) мы поддерживаем фоновую прокрутку для следующих методов:

  • Один палец, тачскрин
  • Два пальца, тачпад
  • Колесо мыши
  • Полоса прокрутки

Если сравнить Edge с другими десктопными браузерами, то вы заметите, что только он поддерживает асинхронную прокрутку с помощью полосы прокрутки, то есть удерживание и перемещение мышью ползунка прокрутки, щелчок по полосе прокрутки или стрелкам. (На самом деле, мы без анонса представили эту функцию ещё в Anniversary Update!)

По результатам тестирования в Windows 10 (14393, Surface Book) и macOS Sierra (10.12, MacBook Air) мы получили следующие результаты:

Два пальца тачпад Тач Колесо мыши Полоса прокрутки Клавиатура
Edge 14 (Windows) Есть Есть Есть Есть Нет
Chrome 56 (Windows) Есть Есть Есть Нет Нет
Firefox 51 (Windows) Нет Нет Нет Нет Нет
Chrome 56 (MacOS) Есть N/A Есть Нет Нет
Firefox 51 (MacOS) Есть N/A Есть Нет Нет
Safari 10.1 (MacOS) Есть N/A Есть Нет Нет

Как демонстрирует* эта таблица, поведение прокрутки может драматически изменяться от браузера к браузеру, и даже от одной ОС к другой. Если вы тестируете один метод прокрутки только в одном браузере, то получите весьма неполные результаты производительности своего сайта, по сравнению с тем, как в реальности с ним работают пользователи!

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

Как прослушивающие процессы мешают прокрутке

Фоновая прокрутка даёт ощутимую прибавку в эффективности — прокрутка и JavaScript полностью разделены, позволяя им работать параллельно без помех друг другу.

Но каждый, кто немного разрабатывал веб-страницы, знает, как установить связь между JavaScript и прокруткой:

Когда мы добавляем прослушивающий процесс wheel, который вызывает event.preventDefault() , то он на 100% блокирует прокрутку, как для колеса мыши, так и для тачпада. И очевидно, если прокрутка заблокирована, то фоновая прокрутка тоже заблокирована.

Менее очевидно влияние такого примера:

Вы можете наивно подумать, что если функция не вызывает preventDefault() , то она вообще не может блокировать прокрутку или, в худшем случае, блокирует её только на время выполнения самой функции. Однако правда в том, что даже пустой прослушивающий процесс полностью блокирует прокрутку, пока не закончены все процессы JavaScript на этой странице, что вы можете проверить в этом демо.

Читайте также:  Почему не работают педали от руля dialog gw 301

Прослушивание колеса мыши не взаимодействует с нашей большой блокирующей операцией JavaScript, но у них общий цикл событий, так что фоновый поток выполнения должен ждать, пока закончится более длительная операция JavaScript, прежде чем получит ответ от функции прослушивания событий.

Почему он должен ждать? Ну, JavaScript — это динамический язык программирования, и браузер не может знать наверняка, что preventDefault() никогда не вызовут. Даже если для разработчика очевидно, что функция делает просто запись console.log() , разработчики браузеров предпочитают не оставлять шансов. На самом деле, даже пустая function() <> вызовет тот же эффект.

Обратите внимание, что это относится не только к колесу мыши: на тач-устройствах прокрутка тоже может быть заблокирована прослушивающими процессами touchstart или touchmove.

Нужно быть осторожным, добавляя прослушивающие события на страницу, потому что они влияют на производительность!

Есть несколько интерфейсов JavaScript API, связанных с прокруткой, однако они не блокируют прокрутку. Событие scroll, хотя это в чём-то нелогично, не может блокировать прокрутку, потому что оно запускается после прокрутки, и поэтому является неотменяемым. Также и новый Pointer Events API, представленный в IE и Microsoft Edge, и который недавно начали внедрять в Chrome и Firefox, изначально спроектирован с целью избежать неумышленного блокирования прокрутки.

Даже в тех случаях, когда нам действительно нужно прослушивать события wheel или touchstart, есть определённые хитрости, как веб-разработчики могут гарантировать работу прокрутки с максимальным качеством. Посмотрим на некоторые из этих хитростей.

Глобальные и локальные прослушивающие процессы

В предыдущем примере мы видели случай глобального прослушивающего процесса (то есть прикреплённого к window или document). Но что насчёт прослушивающих процессов для индивидуальных элементов прокрутки?

Другими словами, представьте страницу, для которой работает прокрутка, но на странице есть отдельная область с собственной независимой прокруткой. Блокирует ли браузер прокрутку для всей страницы, если вы добавите прослушивающий процесс только в этой области?

Если вы проверите на простой демонстрационной странице, то заметите, что Microsoft Edge и Safari оставят плавную прокрутку для целого документа, если прослушивающий процесс для прокрутки находится в div с независимой прокруткой.

Вот таблица браузеров и их поведения:

Два пальца тачпад Тач Колесо мыши Click-and-drag Клавиатура
Десктопный Edge 14 (Windows) Есть Есть Есть Есть Нет
Десктопный Chrome 56 (Windows) Нет Есть Нет Нет Нет
Десктопный Firefox 51 (Windows) Нет Нет Нет Нет Нет
Десктопный Chrome 56 (MacOS) Нет N/A Нет Нет Нет
Десктопный Firefox 51 (MacOS) Есть N/A Есть Нет Нет
Safari 10.1 (MacOS) Есть N/A Есть Нет Нет

Результаты показывают*, что для веб-разработчиков есть доступные оптимизации, чтобы получить пользу от этих функций браузеров. Вместо использования прослушивающих процессов wheel/touch для всего документа, предпочтительно добавить прослушивающие процессы в конкретный подраздел документа, так что прокрутка останется плавной для всех остальных частей страницы. Другими словами, вместо делегирования прослушивающих процессов wheel/touchstart на максимально высокий уровень, лучше всего изолировать их для элемента, где это нужно.

К сожалению, не все фреймворки JavaScript допускают такую практику — в частности, React, как правило, добавляет глобальный прослушивающий процесс ко всему документу даже если тот должен относиться только к части страницы. Однако есть открытый тикет конкретно для этой проблемы, и парни из React сказали, что с радостью примут пулл-реквест. (Уважение парням из React, которые так быстро среагировали на наше предложение)

Пассивный прослушивающий процесс

Уход от глобальных прослушивающих процессов wheel/touchstart — это хорошая практика, но иногда такое просто невозможно, в зависимости от эффекта, которого вы пытаетесь добиться. И в некоторым роде выглядит глупо, что простое прослушивание событий заставляет браузер остановить весь мир, просто потому что существует гипотетическая вероятность вызова PreventDefault() , и он его ждёт.

К счастью, в браузерах начала появляться новая функция, когда веб-разработчики могут явно пометить прослушивающий процесс как «пассивный» и поэтому избежать ожидания:

С таким подходом браузер будет обрабатывать прокрутку так, как будто прослушивающий процесс wheel вообще отсутствует. Эта функция уже доступна в последних версиях Chrome, Firefox и Safari, и должна скоро появиться в будущем релизе Microsoft Edge. (Обратите внимание, что нужно применять feature detection для поддержки браузеров, которые не распознают пассивные прослушивающие процессы).

Для некоторых событий (в том числе touchstart и touchmove) Chrome с версии 56 принял решение вмешиваться и сделал их пассивными по умолчанию. Имейте в виду эту незначительную разницу между браузерами, когда добавляете прослушивающие процессы!

Заключение

Как мы видели, прокрутка в вебе — фантастически сложный процесс, и все браузеры находятся на разных этапах улучшения своей производительности. Но в целом мы можем сформулировать некоторые чёткие советы для веб-разработчиков.

Во-первых, лучше не добавлять прослушивающие процессы wheel или touch к глобальным объектам document или window, а вместо этого добавлять их к меньшим элементам с индивидуальной прокруткой. Разработчикам также следует использовать пассивные прослушивающие процессы, где только возможно, с применением feature detection, чтобы избежать проблем совместимости. Использование Pointer Events (там есть polyfill) и прослушивающих событий scroll — тоже верный способ избежать непреднамеренной блокировки прокрутки.

Надеюсь, эта статья предоставила некоторые полезные советы для веб-разработчиков и позволила мельком взглянуть на то, что у браузеров под капотом. Без сомнений, по мере развития браузеров и роста веба, механика прокрутки станет даже более сложной и изощрённой.

Наша группа Microsoft Edge продолжит инновации в данной области, чтобы обеспечить плавную прокрутку для большего количества сайтов и пользователей. Скажем это для скромного скроллбара — самого старого и неоднозначного взаимодействия в вебе!

* Результаты получены на последней версии каждого браузера в феврале 2017 года. С тех пор Firefox 52 обновил поддержку прокрутки, и теперь соответствует поведению Edge 14 во всех тестах, за исключением скроллинга полосой прокрутки. Надеемся, остальные браузеры тоже сделают улучшения в реализации прокрутки и сделают веб быстрее и более восприимчивым!

Источник

Оцените статью