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.

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

The DocumentPictureInPictureEvent interface of the Document Picture-in-Picture API is the event object for the enter event, which fires when the Picture-in-Picture window is opened.

Event DocumentPictureInPictureEvent


DocumentPictureInPictureEvent() Experimental

Creates a new DocumentPictureInPictureEvent object instance.

Instance methods

Inherits methods from its parent, Event.

Instance properties

Inherits properties from its parent, Event.

window Read only Experimental

Returns a Window instance representing the browsing context inside the DocumentPictureInPicture window the event was fired on.


documentPictureInPicture.addEventListener("enter", (event) => {
  const pipWindow = event.window;
  console.log("Video player has entered the pip window");

  const pipMuteButton = pipWindow.document.createElement("button");
  pipMuteButton.textContent = "Mute";
  pipMuteButton.addEventListener("click", () => {
    const pipVideo = pipWindow.document.querySelector("#video");
    if (!pipVideo.muted) {
      pipVideo.muted = true;
      pipMuteButton.textContent = "Unmute";
    } else {
      pipVideo.muted = false;
      pipMuteButton.textContent = "Mute";



Document Picture-in-Picture Specification
# documentpictureinpictureevent

Browser compatibility

BCD tables only load in the browser

See also