Ermitteln, ob Browser / Gerät HTML5-Video vor dem Abspielen inline wiedergeben kann

8

Ich weiß, dass ich durch navigator.userAgent schauen kann, wenn das Gerät ein iPhone ist, aber es gibt andere Geräte und einige, die mir nicht bekannt sind, die das Video in seinem eigenen Player abspielen werden.

Es kann eine Liste aller Browser / Geräte erstellt werden, die kein Video inline abspielen, aber ich frage mich, ob es eine andere Lösung gibt.

Ist es in JavaScript möglich, zu erkennen, ob ein Browser, z. B. Safari auf dem iPhone, ein Video in seinem eigenen Player statt inline abspielt? So kann es möglich sein, anstelle des Videos eine Alternative wie ein Bild anzuzeigen.

    
Dairo 08.08.2013, 15:21
quelle

1 Antwort

4

Ich weiß, das ist eine alte Frage, aber es ist ein großes Problem für mich und es gibt nicht viele Informationen online. Aber ich kann deine Frage beantworten, nachdem ich Alexeys Antwort in diesem Thread gefunden habe: Ermitteln, ob der Client die Inline-Medienwiedergabe für HTML5-Video zulässt .

Nein, Sie können nicht erkennen, ob der Browser / das Gerät Inline-Video vor der Wiedergabe unterstützt.

Das sind die schlechten Nachrichten. Das Problem ist, dass die einzige zuverlässige Überprüfung für Browser wie iOS Safari auf dem iPhone ist, das Abspielen des Videos zu starten und dann zu schnüffeln, wenn es sofort in den Vollbildmodus wechselt. Selbst das würde scheitern, wenn Sie einen Player erstellen würden, der beim Auslösen des Wiedergabe-Ereignisses automatisch in den Vollbildmodus wechselt.

Die guten Nachrichten sind zumindest für mich, dass ich in der Lage sein werde, das zu erreichen, was ich versuche zu erreichen, indem ich es aufspüre, sobald es zusammen mit CSS-Medienabfragen zur Erkennung der Bildschirmgröße spielt.

Hier sind die relevanten Bits von meinem Player JS, die sehr von diesem Link abgeleitet sind.

Dies erkennt nur die Inline-Unterstützung, nachdem das Video abgespielt wurde

%Vor%     
avaunt 08.09.2015 18:16
quelle

Tags und Links