Während ich daran arbeitete, die Leistung für progressive Web-Apps zu steigern, stieß ich auf eine neue Funktion, Passive Event Listeners
und es fällt mir schwer, das Konzept zu verstehen.
Was ist Passive Event Listeners
und was ist die Notwendigkeit, es in unseren Projekten zu haben?
javascript
dom-events
event-listener
passive-event-listeners
Vivek Pratap Singh
quelle
quelle
Antworten:
Entwickler können sich für eine bessere Bildlaufleistung anmelden, da kein Bildlauf mehr erforderlich ist, um die Listener von Berührungs- und Radereignissen zu blockieren.
Problem: Alle modernen Browser haben eine Gewinde Funktion Scrollen Scrollen zu ermöglichen , auch dann glatt laufen , wenn teuer JavaScript ausgeführt wird , aber diese Optimierung wird durch die Notwendigkeit zu warten , bis die Ergebnisse etwaiger teilweise besiegt
touchstart
undtouchmove
Handler, die die Schriftrolle ganz verhindern kann durch den AufrufpreventDefault()
auf der Veranstaltung.Lösung:
{passive: true}
Durch das Markieren eines Touch- oder Wheel-Listeners als passiv verspricht der Entwickler, dass der Handler nicht aufruft
preventDefault
, um das Scrollen zu deaktivieren.This frees the browser up to respond to scrolling immediately without waiting for JavaScript, thus ensuring a reliably smooth scrolling experience for the user
.DOM-Spezifikation , Demo-Video , Erklärungsdokument
quelle