Ich habe dieses Problem mehrmals konfrontiert und basierend auf früheren Erfahrungen und Graben ich diese Optionen vorschlagen kann:
- ersetzen Video-Tag vollständig
ja gerade wieder einsetzen <video>
Element mit neuen Quellen. Es ist ein einfacher, aber effektiver Ansatz. Vergessen Sie nicht, die Ereignis-Listener erneut zu initialisieren.
- assign Video-URL zu
video.src
sah ich eine Menge in den Antworten hier auf Stackoverflow, und auch in den Quellen auf GitHub.
Es funktioniert, aber Sie können keine Browseroptionen zur Auswahl bereitstellen.
- Anruf
.load()
auf Videoelement
documentation nach Ihnen src
Attribute für <video>
‚s <source>
Tags aktualisieren und rufen dann .load()
zu Änderungen wirksam:
<video id="myVideo">
<source src="video.mp4" type="video/mp4" />
<source src="video.ogg" type="video/ogg" />
</video>
<script>
var video = document.getElementById('myVideo');
var sources = video.getElementsByTagName('source');
sources[0].src = anotherMp4URL;
sources[1].src = anotherOggURL;
video.load();
</script>
Trotzdem here es heißt, dass es in einigen Browsern Probleme gibt.
Ich hoffe, es wird nützlich sein, das alles an einem Ort zu haben.
anpassen Was dynamisch sein sollte und was ist der Problem? Hast du Javascript Erfahrung? – deceze
Ich möchte eine Playlist erstellen, also nach dem ersten Video, das zweite Video abspielen. – March
Ich habe js Erfahrung, ich habe beendet Ereignis wie diese $ ("# myVideo"). Bind ('beendet', Funktion() { // ??? Wie spiele ich nächste }); – March