Javascript.RU

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

Как устранить ошибку 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 Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,700

Для событий 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
Профессор
Отправить личное сообщение для giwuf Посмотреть профиль Найти все сообщения от giwuf
 
Регистрация: 16.05.2017
Сообщений: 163

Сообщение от 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 Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,700

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

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

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

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

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



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

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


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