Ho notato una piccola incoerenza che spero di verificare sia come una stranezza di HTML5, o qualcosa di specifico su Video.js.video.js currentTime() non corretto fino all'attivazione dell'evento timeupdate
Sembra che se si chiama la funzione Video.js' currentTime()
al tempo stesso un nuovo tempo, eventuali ulteriori chiamate a currentTime()
(per ottenere l'ora corrente) non restituirà l'ora corretta (tornerà la volta precedente), fino a quando l'incendio dell'evento timeupdate
. Dopo l'evento timeupdate
, currentTime()
restituirà l'ora corretta.
Per esempio, supponendo che il video non ha iniziato a giocare ancora, ma Video.js ha caricato, insieme con tutti i video meta ecc:
videoPlayer.addEvent('timeupdate', function() {
console.log('Event callback: ' + player.currentTime);
});
console.log('Original time: ' + player.currentTime);
player.currentTime(100);
console.log('New time: ' + player.currentTime);
L'uscita mi aspettavo sarebbe simile:
Original time: 0
New time: 100
Event callback: 100
Tuttavia quello che ho riceve è:
Original time: 0
New time: 0
Event callback: 100
Tutta la comprensione sarebbe fantastico!
Modifica: Posso riprodurlo in Chrome e Safari su OSX, ma non Firefox su OSX (tutto con HTML5). Posso anche riprodurlo su IE8 usando il player Flash e IE9 usando il player HTML5.
Questo sembra essere il caso attraverso la mia sperimentazione. Saluti! –