Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
PerformanceElementTiming
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell:Dies ist eineexperimentelle Technologie
Überprüfen Sie dieBrowser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
DasPerformanceElementTiming Interface enthält Rendertiming-Informationen für Bild- und Textknotenelemente, die der Entwickler mit einemelementtiming Attribut zur Beobachtung versehen hat.
In diesem Artikel
Beschreibung
Das Ziel der Element Timing API ist es, Webentwicklern oder Analysetools die Möglichkeit zu geben, die Rendering-Zeitstempel kritischer Elemente auf einer Seite zu messen.
Die API unterstützt Timing-Informationen für die folgenden Elemente:
<img>Elemente,<image>Elemente innerhalb eines<svg>,- poster-Bilder von
<video>-Elementen, - Elemente, die eine inhaltsvolle
background-imageEigenschaft mit einem URL-Wert für eine tatsächlich verfügbare Ressource haben, und - Gruppen von Textknoten, wie ein
<p>.
Der Autor markiert ein Element zur Beobachtung, indem er daselementtiming-Attribut am Element hinzufügt.
PerformanceElementTiming erbt vonPerformanceEntry.
Instanz-Eigenschaften
Dieses Interface erweitert die folgendenPerformanceEntry-Eigenschaften für Event-Timing-Performance-Entry-Typen, indem sie wie folgt qualifiziert werden:
PerformanceEntry.durationSchreibgeschütztExperimentellGibt immer
0zurück, dadurationauf dieses Interface nicht zutrifft.PerformanceEntry.entryTypeSchreibgeschütztExperimentellGibt immer
"element"zurück.PerformanceEntry.nameSchreibgeschütztExperimentellGibt
"image-paint"für Bilder und"text-paint"für Text zurück.PerformanceEntry.startTimeSchreibgeschütztExperimentellGibt den Wert von
renderTimedieses Eintrags zurück, wenn er nicht0ist, andernfalls den Wert vonloadTimedieses Eintrags.
Dieses Interface unterstützt auch die folgenden Eigenschaften:
PerformanceElementTiming.elementSchreibgeschütztExperimentellEin
Element, das das Element darstellt, über das wir Informationen zurückgeben.PerformanceElementTiming.idSchreibgeschütztExperimentellEin String, der die
iddes Elements ist.PerformanceElementTiming.identifierSchreibgeschütztExperimentellEin String, der den Wert des
elementtimingAttributs am Element darstellt.PerformanceElementTiming.intersectionRectSchreibgeschütztExperimentellEin
DOMRectReadOnly, der das Rechteck des Elements innerhalb des Ansichtsfensters darstellt.PerformanceElementTiming.loadTimeSchreibgeschütztExperimentellEin
DOMHighResTimeStampmit der Ladezeit des Elements.PerformanceElementTiming.naturalHeightSchreibgeschütztExperimentellEin vorzeichenloser 32-Bit-Integer (unsigned long), der die intrinsische Höhe des Bildes darstellt, wenn dies auf ein Bild angewendet wird, 0 für Text.
PerformanceElementTiming.naturalWidthSchreibgeschütztExperimentellEin vorzeichenloser 32-Bit-Integer (unsigned long), der die intrinsische Breite des Bildes darstellt, wenn dies auf ein Bild angewendet wird, 0 für Text.
PerformanceElementTiming.renderTimeSchreibgeschütztExperimentellEin
DOMHighResTimeStampmit der Renderzeit des Elements.PerformanceElementTiming.urlSchreibgeschütztExperimentellEin String, der die anfängliche URL der Ressourcenanforderung für Bilder ist, 0 für Text.
Instanz-Methoden
PerformanceElementTiming.toJSON()ExperimentellGibt eine JSON-Repräsentation des
PerformanceElementTimingObjekts zurück.
Beispiele
>Beobachten der Renderzeit spezifischer Elemente
In diesem Beispiel werden zwei Elemente beobachtet, indem daselementtiming Attribut hinzugefügt wird. EinPerformanceObserver wird registriert, um alle Performance-Einträge des Typs"element" zu erhalten, und dasbuffered Flag wird genutzt, um auf Daten vor der Erstellung des Observers zuzugreifen.
<img src="image.jpg" elementtiming="big-image" /><p elementtiming="text">text here</p>const observer = new PerformanceObserver((list) => { list.getEntries().forEach((entry) => { console.log(entry); });});observer.observe({ type: "element", buffered: true });Zwei Einträge werden in die Konsole ausgegeben. Der erste enthält Details des Bildes, der zweite Details des Textknotens.
Spezifikationen
| Specification |
|---|
| Element Timing API> # sec-performance-element-timing> |
Browser-Kompatibilität
Siehe auch
elementtimingHTML-Attribut