[go: up one dir, main page]

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

HTMLVideoElement: requestPictureInPicture()-Methode

Limited availability

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

Die HTMLVideoElement-Methode requestPictureInPicture() stellt eine asynchrone Anfrage, um das Video im Bild-in-Bild-Modus anzuzeigen.

Es ist nicht garantiert, dass das Video in den Bild-in-Bild-Modus geschaltet wird. Wenn die Erlaubnis für diesen Modus erteilt wird, wird das zurückgegebene Promise erfüllt und das Video erhält ein enterpictureinpicture-Ereignis, um es darüber zu informieren, dass es jetzt im Bild-in-Bild-Modus ist.

Syntax

js
requestPictureInPicture()

Parameter

Keine.

Rückgabewert

Ein Promise, das zu einem PictureInPictureWindow-Objekt aufgelöst wird, welches verwendet werden kann, um zu hören, wenn ein Benutzer dieses schwebende Fenster in der Größe verändert.

Ausnahmen

NotSupportedError DOMException

Wird geworfen, wenn die Funktion nicht unterstützt wird (zum Beispiel durch eine Benutzereinstellung oder durch eine Plattformbeschränkung deaktiviert).

SecurityError DOMException

Wird geworfen, wenn die Funktion durch eine Permissions Policy blockiert wird.

InvalidStateError DOMException

Wird geworfen, wenn das Lesezustand des Videoelements HAVE_NOTHING ist, oder wenn das Videoelement keine Videospur hat, oder wenn das disablePictureInPicture-Attribut des Videoelements true ist.

NotAllowedError DOMException

Wird geworfen, wenn document.pictureInPictureElement null ist und das Dokument keine transiente Aktivierung hat.

Sicherheit

Transiente Benutzeraktivierung ist erforderlich. Der Benutzer muss mit der Seite oder einem UI-Element interagieren, damit diese Funktion funktioniert.

Beispiele

Dieses Beispiel fordert, dass das Video den Bild-in-Bild-Modus betritt, und setzt einen Ereignis-Listener, um das Ändern der Größe des schwebenden Fensters zu behandeln.

js
function enterPictureInPicture() {
  videoElement.requestPictureInPicture().then((pictureInPictureWindow) => {
    pictureInPictureWindow.addEventListener("resize", () =>
      onPipWindowResize(),
    );
  });
}

Spezifikationen

Specification
Picture-in-Picture
# request-pip

Browser-Kompatibilität

Siehe auch