Mientras trabajaba para aumentar el rendimiento de las aplicaciones web progresivas, me encontré con una nueva característica Passive Event Listeners
y me resulta difícil entender el concepto.
¿Qué son Passive Event Listeners
y cuál es la necesidad de tenerlo en nuestros proyectos?
javascript
dom-events
event-listener
passive-event-listeners
Vivek Pratap Singh
fuente
fuente
Respuestas:
Permite a los desarrolladores optar por un mejor rendimiento de desplazamiento al eliminar la necesidad de desplazarse para bloquear los oyentes de eventos táctiles y de rueda.
Problema: todos los navegadores modernos tienen una función de desplazamiento roscado para permitir que el desplazamiento se ejecute sin problemas incluso cuando se está ejecutando JavaScript costoso, pero esta optimización es parcialmente derrotada por la necesidad de esperar los resultados de cualquiera
touchstart
y lostouchmove
controladores, lo que puede evitar el desplazamiento por completo llamandopreventDefault()
en el eventoSolución:
{passive: true}
Al marcar un oyente táctil o de rueda como pasivo, el desarrollador promete que el controlador no llamará
preventDefault
para deshabilitar el desplazamiento.This frees the browser up to respond to scrolling immediately without waiting for JavaScript, thus ensuring a reliably smooth scrolling experience for the user
.Especificaciones DOM , Video Demo , Doc Explicador
fuente