PictureInPictureWindow: resize event

Limited availability

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

The resize event fires when the floating video window has been resized.

This event is not cancelable and does not bubble.

Syntax

Use the event name in methods like addEventListener(), or set an event handler property.

js
addEventListener("resize", (event) => {});

onresize = (event) => {};

Event type

Event properties

In addition to the properties listed below, properties from the parent interface, Event, are available.

PictureInPictureEvent.pictureInPictureWindow

Returns the PictureInPictureWindow that is resized.

Examples

Window size logger

html
<p>Resize the floating video window to fire the <code>resize</code> event.</p>
<p>Window height: <span id="height"></span></p>
<p>Window width: <span id="width"></span></p>
<video id="video" src="" muted autoplay></video>
js
const video = document.querySelector("#video");
const heightOutput = document.querySelector("#height");
const widthOutput = document.querySelector("#width");

function resize(evt) {
  heightOutput.textContent = evt.target.height;
  widthOutput.textContent = evt.target.width;
}

video.requestPictureInPicture().then((pictureInPictureWindow) => {
  pictureInPictureWindow.onresize = resize;
  // or
  pictureInPictureWindow.addEventListener("resize", resize);
});

Specifications

Specification
Picture-in-Picture
# eventdef-pictureinpicturewindow-resize
Picture-in-Picture
# dom-pictureinpicturewindow-onresize

Browser compatibility

BCD tables only load in the browser