web-dev-qa-db-fra.com

InvalidStateError: une tentative a été faite pour utiliser un objet qui n'est pas, ou n'est plus, utilisable

Ce qui suit fonctionne dans Chrome mais pas Firefox:

var myVideo = document.getElementById('myVideo')
myVideo.currentTime = 570
<video id="myVideo" controls>
<source src="myVideo.mp4" type="video/mp4">
</video>

Dans Firefox, il est dit

InvalidStateError: une tentative a été faite pour utiliser un objet qui n'est pas, ou n'est plus, utilisable

pour la ligne 2.

11
Phillip Senn

Cette erreur se produit lorsque l'objet, dans ce cas la vidéo, n'a pas été chargé suffisamment pour pouvoir définir le currentTime et avancer.

Vous devez attendre la lecture de la vidéo avant de pouvoir définir le currentTime

var myVideo = document.getElementById('myVideo')

myVideo.addEventListener('canplaythrough', function() {
    myVideo.currentTime = 570;
}, false);
14
adeneo