Parfois, ma vidéo HTML5 ne génère pas un événement "terminé" sur l'iPad. Cela ne se produit que lorsque j'omets l'attribut "controls" et que je lance la lecture à partir de javascript. Cela fonctionne habituellement bien la première fois, mais la deuxième fois la vidéo se joue mais ne génère pas un événement "terminé". J'appelle "load()" après chaque lecture afin de réinitialiser au début du clip (parce que la recherche ne semble pas fonctionner du tout - voir this thread). J'ai une solution de contournement, qui consiste à suivre les événements "timeupdate" et effectuer mes actions de fin de jeu lorsque vid.currentTime>=vid.duration
, mais je me demandais si quelqu'un d'autre avait connu ce problème. Un code pertinent suit.manquant vidéo html5 "terminé" événement sur iPad
Vive -Chris
Le document fonction onload:
function load() {
var vid = document.getElementById('vid');
vid.addEventListener('ended', function() {
alert('video ended');
vid.load();
},false);
}
Le html:
<body onload="load();">
<h1>HTML5 Video Test</h1>
<input type="submit" value="Play" onclick="document.getElementById('vid').play();">
<video id="vid" src="test.mov" width="640" height="480"></video>
</body>
Merci! Savez-vous si cela documenté quelque part? Ou est-ce un bug? seek (0) fonctionne dans les navigateurs de bureau. – wodenx
c'est un bug, je l'ai "documenté" sur mon propre blog: http://blog.millermedeiros.com/2011/03/html5-video-issues-on-the-ipad-and-how-to-solve -leur/ –