Problème lecture plusieurs videos mp4 dans le même lecteur media

ClaudiusR Messages postés 9 Statut Membre -  
ElementW Messages postés 5690 Statut Contributeur -
J'ai créé une fonction qui lit des vidéos dans le même lecteur html5(john Dyer mediaelement player). Elle fonctionne parfaitement sur mon ordinateur, à chaque click de souris à l'endroit approprié, la vidéo change et se lit normalement Sur un navigateur internet, la 1ère vidéo se lit normalement, mais il faut cliquer plusieurs fois pour lire une autre vidéo, et au fur et à mesure le lecteur ralentit fortement et se bloque.
Voici la fonction:
function change_video(src) {
document.getElementById('FLVPlayer').defaultValue
var Mavideo="<video id='FLVPlayer' class='mejs-container mejs-wmp' width='555' height='309' type='video/mp4' src='"+src+".mp4' poster='images/Poster.png' controls preload='none' autoplay Loop> </video>";
document.getElementById('FLVPlayer').innerHTML=Mavideo;
$('video,audio').mediaelementplayer();
}

A voir sur le site:
http://www.cdf-dignelesbains.fr/accueil2016.html

Quelqu'un peut-il me rectifier cette fonction?
Merci,

5 réponses

  1. ElementW Messages postés 5690 Statut Contributeur 1 293
     
    'lut
    Tu recréées le lecteur en entier à chaque fois (bien qu'en supprimant les éléments dans l'arbre DOM du précédent, le coté JavaScript reste en mémoire).

    Crées plutôt le lecteur une unique fois depuis zéro, puis demandes-lui de changer certaines propriétés après:
    var lecteur;
    
    function change_video(src) {
        player.pause();
        player.setSrc(src + '.mp4');
        player.play();
    } 
    
    window.addEventListener('load', function() {
        lecteur = new MediaElementPlayer('#FLVPlayer', {
            loop: true
        });
        change_video( ICI URL DE LA 1ere VIDEO );
    });
    

    from human import idiocy
    del idiocy
    0
    1. ClaudiusR Messages postés 9 Statut Membre
       
      Merci pour vôtre réponse, mais je n'arrive pas à faire exécuter la fonction.
      0
      1. ElementW Messages postés 5690 Statut Contributeur 1 293 > ClaudiusR Messages postés 9 Statut Membre
         
        je n'arrive pas à faire exécuter la fonction
        Pas très descriptif... Que se passe-t-il ? Que dit la console JavaScript ?
        0
  2. ClaudiusR Messages postés 9 Statut Membre
     
    Bonjour,
    Encore merci.
    Rien ne se passe lorsque j'exécute la fonction.
    A bientôt...,
    0
  3. ClaudiusR Messages postés 9 Statut Membre
     
    Rebonjour,
    En fait, où dois-je placer ces lignes code:

    window.addEventListener('load', function() {
    lecteur = new MediaElementPlayer('#FLVPlayer', {
    loop: true
    });
    change_video( ICI URL DE LA 1ere VIDEO );
    });
    0
    1. ElementW Messages postés 5690 Statut Contributeur 1 293
       
      Au même endroit que ta fonction
      change_video
      existante, en la remplaçant...
      0
      1. ClaudiusR Messages postés 9 Statut Membre > ElementW Messages postés 5690 Statut Contributeur
         
        Bonjour,
        Rien ne se passe lorsque j'exécute la fonction, aucune vidéo ne se charge.
        Merci pour votre réponse.
        0
      2. ElementW Messages postés 5690 Statut Contributeur 1 293 > ClaudiusR Messages postés 9 Statut Membre
         
        Que dit la console JavaScript ? (F12 sur Chrom[e/ium]/Firefox)
        0
  4. ClaudiusR Messages postés 9 Statut Membre
     
    Réponse Console Javascript:
    [cycle2] --c2 init--
    jquery.cycle2.js:608 [cycle2] speed: 2000 (number)
    jquery.cycle2.js:608 [cycle2] timeout: 5000 (number)
    jquery.cycle2.js:608 [cycle2] fx: fadeout (string)
    accueil2016.html:61 Uncaught ReferenceError: Videos is not defined(anonymous function) @ accueil2016.html:61

    Le code dans le head:
    var lecteur;

    function change_video(src) {
    player.pause();
    player.setSrc(src + '.mp4');
    player.play();
    }

    window.addEventListener('load', function() {
    lecteur = new MediaElementPlayer('#FLVPlayer', {
    loop: true
    });
    change_video(Videos/IntroWeb);
    });
    0
    1. ElementW Messages postés 5690 Statut Contributeur 1 293
       
      Tu as oublié les guillemets (simples
      '
      ou doubles
      "
      ) avant et après
      Videos/IntroWeb
      .
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. ClaudiusR Messages postés 9 Statut Membre
     
    Bonjour gravgun,
    J'ai bien ajouté les guillemets, mais toujours pas de lecture vidéo.
    j'ai aussi essayé de mettre l'URL complet à partie du site, a savoir:
    ('http://www.cdf-dignelesbains.fr/Videos/IntroWeb')
    Ci-dessous réponse de la console Javascript:
    [cycle2] --c2 init--
    jquery.cycle2.js:608 [cycle2] speed: 2000 (number)
    jquery.cycle2.js:608 [cycle2] timeout: 5000 (number)
    jquery.cycle2.js:608 [cycle2] fx: fadeout (string)
    accueil2016.html:52 Uncaught ReferenceError: player is not defined
    merci et à bientôt,
    0
    1. ElementW Messages postés 5690 Statut Contributeur 1 293
       
      À moi la faute, il faut remplacer
      player
      par
      lecteur
      dans
      change_video
      , j'ai copié collé trop vite.
      0