W3cubDocs

/Web APIs

PerformanceElementTiming: naturalWidth property

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 <image> 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

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
naturalWidth 77 79 No No 64 No 77 77 No 55 No 12.0

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceElementTiming/naturalWidth