Back to Content

HTMLVideoElement: leavepictureinpicture event

files/en-us/web/api/htmlvideoelement/leavepictureinpicture_event/index.md

latest1.9 KB
Original Source

{{APIRef("Picture-in-Picture API")}}

The leavepictureinpicture event is fired when the {{DOMxRef("HTMLVideoElement")}} leaves picture-in-picture mode successfully.

This event is not cancelable and does not bubble.

Syntax

Use the event name in methods like {{domxref("EventTarget.addEventListener", "addEventListener()")}}, or set an event handler property.

js-nolint
addEventListener("leavepictureinpicture", (event) => { })

onleavepictureinpicture = (event) => { }

Event type

A {{domxref("PictureInPictureEvent")}}. Inherits from {{domxref("Event")}}.

{{InheritanceDiagram("PictureInPictureEvent")}}

Event properties

This interface also inherits properties from its parent {{domxref("Event")}}.

Examples

These examples add an event listener for the HTMLVideoElement's leavepictureinpicture event, then post a message when that event handler has reacted to the event firing.

Using addEventListener():

js
const video = document.querySelector("#video");
const button = document.querySelector("#button");

function onExitPip() {
  console.log("Picture-in-Picture mode deactivated!");
}

video.addEventListener("leavepictureinpicture", onExitPip);

button.onclick = () => {
  if (document.pictureInPictureElement) {
    document.exitPictureInPicture();
  }
};

Using the onleavepictureinpicture event handler property:

js
const video = document.querySelector("#video");
const button = document.querySelector("#button");

function onExitPip() {
  console.log("Picture-in-Picture mode deactivated!");
}

video.onleavepictureinpicture = onExitPip;

button.onclick = () => {
  if (document.pictureInPictureElement) {
    document.exitPictureInPicture();
  }
};

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also