Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.07.2020, 11:19
Кандидат Javascript-наук
Отправить личное сообщение для giwuf Посмотреть профиль Найти все сообщения от giwuf
 
Регистрация: 16.05.2017
Сообщений: 142

Как устранить ошибку Pagespeed “Пассивные прослушиватели событий не используются.."
При оптимизации сайта с помощью Google Pagespeed столкнулся с такой проблемой,

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

document.addEventListener('touchstart', onTouchStart, {passive: true});


Я использую на сайте библиотеку jquery.ui.touch-punch.js, но не могу понять куда в нее поместить свойство

passive: true
Ответить с цитированием
  #2 (permalink)  
Старый 01.07.2020, 12:26
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 447

Для событий tochstart, touchmove, wheel, mousewheel
{passive: true} идет по умолчанию, кроме совсем старых версий.
https://developer.mozilla.org/ru/doc...E_passive_true

Последний раз редактировалось voraa, 01.07.2020 в 12:39.
Ответить с цитированием
  #3 (permalink)  
Старый 01.07.2020, 12:52
Кандидат Javascript-наук
Отправить личное сообщение для giwuf Посмотреть профиль Найти все сообщения от giwuf
 
Регистрация: 16.05.2017
Сообщений: 142

Сообщение от voraa Посмотреть сообщение
Для событий tochstart, touchmove, wheel, mousewheel
{passive: true} идет по умолчанию, кроме совсем старых версий.
https://developer.mozilla.org/ru/doc...E_passive_true
voraa, хорошо. И что это дает? как поправить проблему?
Ответить с цитированием
  #4 (permalink)  
Старый 01.07.2020, 12:59
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 447

А какая проблема то?
Ответить с цитированием
  #5 (permalink)  
Старый 01.07.2020, 15:34
Кандидат Javascript-наук
Отправить личное сообщение для giwuf Посмотреть профиль Найти все сообщения от giwuf
 
Регистрация: 16.05.2017
Сообщений: 142

Сообщение от voraa Посмотреть сообщение
А какая проблема то?
В оптимизации по PageSpeed, занижает показатели из-за нее
Ответить с цитированием
  #6 (permalink)  
Старый 01.07.2020, 15:48
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 447

Ну значит либо придется "ломать" jquery, либо не использовать его для обработки этих событий.
Назначение обработчика addEventListener происходит именно там.
С другой стороны можно наплевать на эти формальные показатели. {passive: true} используется по умолчанию для этих событий в современных браузерах.
Сам факт использования jquery при обработке событий, где требуется оптимизация и быстрая реакция уже не оптимально, т.к. jquery производит слишком много лишних действий при обработки события.Он может потратить на порядок больше времени на свои внутренние действия, чем сама пользовательская обработка.
Ответить с цитированием
  #7 (permalink)  
Старый 02.07.2020, 12:38
Кандидат Javascript-наук
Отправить личное сообщение для giwuf Посмотреть профиль Найти все сообщения от giwuf
 
Регистрация: 16.05.2017
Сообщений: 142

Сообщение от voraa Посмотреть сообщение
Ну значит либо придется "ломать" jquery, либо не использовать его для обработки этих событий.
Назначение обработчика addEventListener происходит именно там.
С другой стороны можно наплевать на эти формальные показатели. {passive: true} используется по умолчанию для этих событий в современных браузерах.
Сам факт использования jquery при обработке событий, где требуется оптимизация и быстрая реакция уже не оптимально, т.к. jquery производит слишком много лишних действий при обработки события.Он может потратить на порядок больше времени на свои внутренние действия, чем сама пользовательская обработка.
voraa спасибо, но у меня сайт на wordpress, а значит, без jquery ни как нельзя
Ответить с цитированием
  #8 (permalink)  
Старый 02.07.2020, 14:50
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 447

Сообщение от giwuf
а значит, без jquery ни как нельзя
Но назначить обработчик события без jquery то можно.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 11:29
Управление скроллом "а-ля тач" HonesT Элементы интерфейса 2 27.08.2013 13:25
О наследовании событий, или как корректно его отменить. JCShen Events/DOM/Window 8 08.02.2010 23:00
Как выдавать ошибку при сбросе загрузки страницы? AvaGet Общие вопросы Javascript 2 11.12.2008 18:04