Ich möchte <track src
auf einen "data:" URI setzen.
Allerdings bekomme ich
Cross-Origin-Text Track-Load verweigert von Cross-Origin Resource Sharing-Richtlinie.
Der Fehler tritt sowohl in Chrome als auch in Safari auf.
Wenn ich Track src auf "/foo.vtt" setze, funktioniert es. Der "Ursprung" von Daten-URI ist nicht die aktuelle Seite uri?
Jsfiddle Beispiel hier. (Schauen Sie sich die Fehlerausgabe in der Konsole an.)
Die Browser-Unterstützung zum Einstellen der Track-Daten über Daten-URIs scheint unvollständig und fehlerhaft zu sein. Hier finden Sie eine Liste mit Fehlerberichten für jeden Browser.
Firefox scheint die Einstellung der Spur direkt im HTML zu unterstützen, indem base64-kodierte Daten-URIs ( jsfiddle ) verwendet werden. Das Aktualisieren der Spur " src
" über JavaScript scheint zu funktionieren, wirkt sich jedoch nicht auf die tatsächlich verwendeten Spurdaten aus.
Wenn Sie die Track-Daten wirklich über JavaScript aktualisieren müssen, können Sie den WEBVTT-Text manuell parsen und einen Cue nach dem anderen hinzufügen. Diese Seite beschreibt alle Methoden, die nicht funktionieren, um VTT-Daten direkt in die Seite zu integrieren, und gibt ein Beispiel für das Parsen und Cue-Laden am Ende.
Tags und Links html html5 google-chrome html5-video data-uri