En travaillant pour améliorer les performances des applications Web progressives, je suis tombé sur une nouvelle fonctionnalité Passive Event Listeners
et j'ai du mal à comprendre le concept.
Que sont Passive Event Listeners
et quel est le besoin de l'avoir dans nos projets?
javascript
dom-events
event-listener
passive-event-listeners
Vivek Pratap Singh
la source
la source
Réponses:
Il permet aux développeurs d'accepter de meilleures performances de défilement en éliminant le besoin de défilement pour bloquer les écouteurs d'événements tactiles et roulants.
Problème: Tous les navigateurs modernes disposent d' une fonction de défilement enfilée pour permettre le défilement de fonctionner en douceur , même lorsque JavaScript coûteux est en cours d' exécution, mais cette optimisation est partiellement vaincu par la nécessité d'attendre les résultats de tout
touchstart
et lestouchmove
gestionnaires, ce qui peut empêcher le défilement entièrement en appelantpreventDefault()
sur l'événement.Solution:
{passive: true}
En marquant un auditeur tactile ou à molette comme passif, le développeur promet que le gestionnaire n'appellera pas
preventDefault
pour désactiver le défilement.This frees the browser up to respond to scrolling immediately without waiting for JavaScript, thus ensuring a reliably smooth scrolling experience for the user
.Spécifications DOM , vidéo de démonstration , document explicatif
la source