PerformanceNavigationTiming
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since October 2021.
* Some parts of this feature may have varying levels of support.
ThePerformanceNavigationTiming
interface provides methods and properties to store and retrieve 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.
Only the current document is included in the performance timeline, so there is only onePerformanceNavigationTiming
object in the performance timeline. It inherits all of the properties and methods ofPerformanceResourceTiming
andPerformanceEntry
.
The following diagram shows all of the timestamp properties defined inPerformanceNavigationTiming
.
In this article
Instance properties
This interface extends the followingPerformanceEntry
properties by qualifying and constraining them as follows:
PerformanceEntry.entryType
Read onlyReturns
"navigation"
.PerformanceEntry.name
Read onlyReturns thedocument's URL.Note thattext fragments, and any other fragment directives, are stripped from the URL.
PerformanceEntry.startTime
Read onlyReturns a
DOMHighResTimeStamp
with a value of0
.PerformanceEntry.duration
Read onlyReturns a
timestamp
that is the difference between thePerformanceNavigationTiming.loadEventEnd
andPerformanceEntry.startTime
properties.
This interface also extends the followingPerformanceResourceTiming
properties by qualifying and constraining them as follows:
PerformanceResourceTiming.initiatorType
Read onlyReturns
"navigation"
.
The interface also supports the following properties:
PerformanceNavigationTiming.activationStart
Read onlyExperimentalA
DOMHighResTimeStamp
representing the time between when a document starts prerendering and when it is activated.PerformanceNavigationTiming.criticalCHRestart
Read onlyExperimentalA
DOMHighResTimeStamp
representing the time at which the connection restart occurred due toCritical-CH
HTTP response header mismatch.PerformanceNavigationTiming.domComplete
Read onlyA
DOMHighResTimeStamp
representing the time immediately before the user agent sets the document'sreadyState
to"complete"
.PerformanceNavigationTiming.domContentLoadedEventEnd
Read onlyA
DOMHighResTimeStamp
representing the time immediately after the current document'sDOMContentLoaded
event handler completes.PerformanceNavigationTiming.domContentLoadedEventStart
Read onlyA
DOMHighResTimeStamp
representing the time immediately before the current document'sDOMContentLoaded
event handler starts.PerformanceNavigationTiming.domInteractive
Read onlyA
DOMHighResTimeStamp
representing the time immediately before the user agent sets the document'sreadyState
to"interactive"
.PerformanceNavigationTiming.loadEventEnd
Read onlyA
DOMHighResTimeStamp
representing the time immediately after the current document'sload
event handler completes.PerformanceNavigationTiming.loadEventStart
Read onlyA
DOMHighResTimeStamp
representing the time immediately before the current document'sload
event handler starts.PerformanceNavigationTiming.notRestoredReasons
Read onlyExperimentalA
NotRestoredReasons
object providing report data on reasons why the current document was blocked from using the back/forward cache (bfcache) on navigation.PerformanceNavigationTiming.redirectCount
Read onlyA number representing the number of redirects since the last non-redirect navigation in the current browsing context.
PerformanceNavigationTiming.type
Read onlyA string representing the navigation type. Either
"navigate"
,"reload"
, or"back_forward"
.PerformanceNavigationTiming.unloadEventEnd
Read onlyA
DOMHighResTimeStamp
representing the time immediately after the current document'sunload
event handler completes.PerformanceNavigationTiming.unloadEventStart
Read onlyA
DOMHighResTimeStamp
representing the time immediately before the current document'sunload
event handler starts.
Instance methods
PerformanceNavigationTiming.toJSON()
Returns a JSON representation of the
PerformanceNavigationTiming
object.
Specifications
Specification |
---|
Navigation Timing Level 2> # sec-PerformanceNavigationTiming> |
Browser compatibility
Loading…