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 versetzt wird. Falls die Erlaubnis, diesen Modus zu betreten, erteilt wird, wird das zurückgegebene Promise aufgelöst, und das Video erhält ein enterpictureinpicture-Ereignis, um darüber zu informieren, dass es sich nun im Bild-in-Bild-Modus befindet.
Syntax
requestPictureInPicture()
Parameter
Keine.
Rückgabewert
Ein Promise, das zu einem PictureInPictureWindow-Objekt aufgelöst wird, das verwendet werden kann, um darauf zu hören, wenn ein Benutzer dieses schwebende Fenster in der Größe ändern wird.
Ausnahmen
NotSupportedErrorDOMException-
Wird ausgelöst, wenn die Funktion nicht unterstützt wird (zum Beispiel deaktiviert durch eine Benutzereinstellung oder durch eine Plattformbeschränkung).
SecurityErrorDOMException-
Wird ausgelöst, wenn die Funktion durch eine Berechtigungsrichtlinie blockiert ist.
InvalidStateErrorDOMException-
Wird ausgelöst, wenn der
readStatedes VideoelementsHAVE_NOTHINGist, oder wenn das Videoelement keine Videospur hat, oder wenn dasdisablePictureInPicture-Attribut des Videoelementstrueist. NotAllowedErrorDOMException-
Wird ausgelöst, wenn
document.pictureInPictureElementnullist und das Dokument keine flüchtige Aktivierung hat.
Sicherheit
Flüchtige 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 in den Bild-in-Bild-Modus wechselt, und legt einen Ereignislistener fest, um das Ändern der Größe des schwebenden Fensters zu behandeln.
function enterPictureInPicture() {
videoElement.requestPictureInPicture().then((pictureInPictureWindow) => {
pictureInPictureWindow.addEventListener("resize", () =>
onPipWindowResize(),
);
});
}
Spezifikationen
| Specification |
|---|
| Picture-in-Picture> # request-pip> |
Browser-Kompatibilität
Loading…