Back to Content

DocumentPictureInPictureEvent

files/en-us/web/api/documentpictureinpictureevent/index.md

latest2.0 KB
Original Source

{{APIRef("Document Picture-in-Picture API")}}{{SeeCompatTable}}{{SecureContext_Header}}

The DocumentPictureInPictureEvent interface of the {{domxref("Document Picture-in-Picture API", "Document Picture-in-Picture API", "", "nocode")}} is the event object for the {{domxref("DocumentPictureInPicture/enter_event", "enter")}} event, which fires when the Picture-in-Picture window is opened.

{{InheritanceDiagram}}

Constructor

  • {{domxref("DocumentPictureInPictureEvent.DocumentPictureInPictureEvent", "DocumentPictureInPictureEvent()")}} {{Experimental_Inline}}
    • : Creates a new DocumentPictureInPictureEvent object instance.

Instance properties

Inherits properties from its parent, {{DOMxRef("Event")}}.

  • {{domxref("DocumentPictureInPictureEvent.window", "window")}} {{ReadOnlyInline}} {{Experimental_Inline}}
    • : Returns a {{domxref("Window")}} instance representing the browsing context inside the DocumentPictureInPicture window the event was fired on.

Instance methods

Inherits methods from its parent, {{DOMxRef("Event")}}.

Examples

js
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";
    }
  });

  pipWindow.document.body.append(pipMuteButton);
});

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also