PerformanceElementTiming: naturalWidth property

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The naturalWidth read-only property of the PerformanceElementTiming interface returns the intrinsic width of the image element.

Value

An unsigned 32-bit integer (unsigned long) which is the intrinsic width of the image if this is applied to an image, 0 for text.

Examples

Logging naturalWidth

In this example an <img> element is being observed by adding the elementtiming attribute. A PerformanceObserver is registered to get all performance entries of type "element" and the buffered flag is used to access data from before observer creation. The image file has a width of 1000px and a height of 750px. Calling entry.naturalWidth returns 1000, that being the intrinsic width in pixels.

html
<img src="image.jpg" alt="a nice image" elementtiming="big-image" id="myImage" /> 
js
const observer = new PerformanceObserver((list) => { list.getEntries().forEach((entry) => { if (entry.identifier === "big-image") { console.log(entry.naturalWidth); } }); }); observer.observe({ type: "element", buffered: true }); 

Specifications

Specification
Element Timing API
# dom-performanceelementtiming-naturalwidth

Browser compatibility