IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Message d'erreur : InvalidStateError


Sujet :

JavaScript

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 150
    Points : 157
    Points
    157
    Par défaut Message d'erreur : InvalidStateError
    Bonjour,

    J'utilise actuellement la balise <video> de HTML 5, cependant un message d'erreur me gêne :

    InvalidStateError: An attempt was made to use an object that is not, or is no longer, usable
    error source line:
    videoEnCours.currentTime = positionFuture;
    Le code juste avant l'erreur est le suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if(prochaineVideo == "suivant"){
         videoEnCours.src = "video_2.mp4";
         videoEnCours.play();
         videoEnCours.currentTime = positionFuture;
    }
    Si je clique sur suivant, la vidéo suivante est lancé (je modifie src), et je modifie le curseur de lecture si besoin(n'importe qu'elle valeur). Ceci est juste pour de l'entraînement. Une remarque : si je met un "alert('test')" entre les deux lignes dans la conditions - aucun message d'erreur, ces comme-ci qu'il y avait besoin de quelques secondes pour pouvoir déplacer le curseur de lecture. Qu'en pensez-vous ?

    Merci.

  2. #2
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 093
    Points : 6 754
    Points
    6 754
    Par défaut
    Je cite https://developer.mozilla.org/en-US/...lement#Methods :

    If you have changed the src attribute of the media element since the page was loaded, you must call load() before play(), otherwise the original media plays again.
    En français : si vous avez changé l'attribut src de l'élément media après le chargement de la page, vous devez appeler load() avant play(), autrement c'est le media original qui est rejoué.

    Je devine que ton attribut src est vide initialement. Ça pourrait expliquer ton erreur. En tout cas, essaye de faire load() avant et reviens me dire si ça marche
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 150
    Points : 157
    Points
    157
    Par défaut
    Bonjour Watilin,

    J'ai essayé la solution que tu me proposes cependant ça ne fonctionne pas, au vu des symptôme que j'ai décris dans mon premier message j'ai pris l'initiative de procédé ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    maVideo.addEventListener('canplay',function() { maVideo.currentTime = positionFuture; },false);
    Cela fonctionne sous IE à ma grande surprise mais pas sur Firefox ! Le curseur ce déplace à la position voulue mais le lecteur bug sur cette même position en faisant "trembler" l'image. Aucune erreur en console.

    Avez-vous des pistes ? merci.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 150
    Points : 157
    Points
    157
    Par défaut
    Je reviens vers vous car j'ai réglé le problème du message précédent pour en créer un autre =P

    Effectivement, sous Internet Explorer et Google Chrome cela fonctionne désormais.
    Sous Firefox le curseur (de temps) ce déplace à la bonne position la lecture de la vidéo poursuit cependant lorsque ce dernier a été modifier il n'est plus possible d'avancer/reculer le temps manuellement. Ce soucis ce produit uniquement sous Firefox...

    Si quelqu'un à une idée qu'il ce manifeste

    Edit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    videoEnCours.onplay = function() { videoEnCours.currentTime = curseurTemps; alert('passage');};
    videoEnCours.load();
    A chaque fois que je (re)déplace le curseur de temps il rappel cet événement contrairement au deux autres navigateurs d’où le fait qui refuse d'avancer. En vous donnant la cause j'espère avoir plus de réponse.

    Merci.

Discussions similaires

  1. [TSocket] Message d'erreur
    Par rgz dans le forum Web & réseau
    Réponses: 6
    Dernier message: 04/07/2003, 09h16
  2. Surcharger le message d'erreur après un OnException
    Par Tirlibibi dans le forum XMLRAD
    Réponses: 2
    Dernier message: 24/04/2003, 11h42
  3. Réponses: 4
    Dernier message: 04/03/2003, 01h05
  4. [CR] Message d'erreur
    Par nono1 dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 11/09/2002, 14h54
  5. Réponses: 2
    Dernier message: 27/05/2002, 19h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo