This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.
The PerformanceNavigationTiming
interface provides methods and properties to store and retrieve high resolution timestamps
or metrics regarding the browser's document navigation events. For example, this interface can be used to determine how much time it takes to load or unload a document.
This interface extends the following PerformanceEntry
properties by qualifying and constraining the property values for performance entries
with a "navigation
" entry type
.
PerformanceEntry.entryType
- Set to "navigation
".PerformanceEntry.name
- Set to thestring
"document
".PerformanceEntry.startTime
- Set to atimestamp
with a value of "0
".PerformanceEntry.duration
- Set to thetimestamp
that is the difference between thePerformanceNavigationTiming.loadEventEnd
andPerformanceEntry.startTime
properties, respectively.
Properties
PerformanceNavigationTiming.domComplete
Read only- A
DOMHighResTimeStamp
representing a time value equal to the time immediately before the browser sets the current document readiness of the current document to complete. PerformanceNavigationTiming.domContentLoadedEventEnd
Read only- A
DOMHighResTimeStamp
representing the time value equal to the time immediately after the current document's DOMContentLoaded event completes. PerformanceNavigationTiming.domContentLoadedEventStart
Read only- A
DOMHighResTimeStamp
representing the time value equal to the time immediately before the user agent fires the DOMContentLoaded event at the current document. PerformanceNavigationTiming.domInteractive
Read only- A
DOMHighResTimeStamp
representing atimestamp
representing the time value equal to the time immediately before the user agent sets the current document readiness of the current document to interactive. PerformanceNavigationTiming.loadEventEnd
Read only- A
DOMHighResTimeStamp
representing the time when the load event of the current document is completed. PerformanceNavigationTiming.loadEventStart
Read only- A
DOMHighResTimeStamp
representing the time value equal to the time immediately before the load event of the current document is fired. PerformanceNavigationTiming.redirectCount
Read only- A number representing the number of redirects since the last non-redirect navigation under the current browsing context.
PerformanceNavigationTiming.type
Read only- A
string
representing the navigation type. Must be: "navigate
", "reload
", "back_forward
" or "prerender
". PerformanceNavigationTiming.unloadEventEnd
Read only- A
DOMHighResTimeStamp
representing the time value equal to the time immediately after the user agent finishes the unload event of the previous document. PerformanceNavigationTiming.unloadEventStart
Read only- A
DOMHighResTimeStamp
representing the time value equal to the time immediately before the user agent starts the unload event of the previous document.
Methods
PerformanceNavigationTiming.toJSON()
- Returns a
DOMString
that is the JSON representation of thePerformanceNavigationTiming
object.
Specifications
Specification | Status | Comment |
---|---|---|
Navigation Timing Level 2 The definition of 'PerformanceNavigationTiming' in that specification. |
Editor's Draft | Initial definition. |
Browser compatibility
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support. | 57 | (Yes) | No support | No support | 44 | No support |
Feature | Android Webview | Chrome for Android | Edge | Firefox Mobile (Gecko) | Firefox OS | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|---|
Basic support. | 57 | 57 | (Yes) | No support | No support | No support | 44 | No support |