web-dev-qa-db-fra.com

Comment désactiver la lecture automatique pour la vidéo locale dans iframe

Comment désactiver la lecture automatique pour la vidéo lorsque src provient de mon ordinateur local?

<iframe width="465" height="315" src="videos/example.mp4"></iframe>

J'ai essayé ce qui suit, mais ça ne marche pas: 

  • src="videos/example.mp4?autoplay=0"
  • src="videos/example.mp4?autoplay=false"
  • src="videos/example.mp4?autostart=0"
  • src="videos/example.mp4?autostart=false"
14
Taleb

Si vous utilisez HTML5, utilisez le tag Video convient à cette fin.

Vous pouvez utiliser la balise vidéo de cette manière sans lecture automatique:

<video width="320" height="240" controls>
    <source src="videos/example.mp4" type="video/mp4">
</video>

Pour activer la lecture automatique,

<video width="320" height="240" controls autoplay>
    <source src="videos/example.mp4" type="video/mp4">
</video>
32
Abhishek

Que pensez-vous de la balise video? Si vous n'avez pas à utiliser la balise iframe, vous pouvez utiliser la balise video à la place. 

<video width="500" height="345" src="hey.mp4"  />

Vous ne devez pas utiliser l'attribut autoplay dans votre balise video pour désactiver la lecture automatique. 

2
Mindsers

Vous pouvez définir la source du lecteur comme chaîne vierge lors du chargement de la page. De cette manière, vous n’avez pas à passer à la balise video.

var player = document.getElementById("video-player");
player.src = "";

Lorsque vous souhaitez lire une vidéo, modifiez simplement son attribut src, par exemple:

function play(source){
   player.src = source;
}
0
Yuanchun

Remplacez l'iframe pour cela:

<video class="video-fluid z-depth-1" loop controls muted>
  <source src="videos/example.mp4" type="video/mp4" />
</video>
0
Juan Pablo Venditti

J'ai essayé toutes les solutions possibles mais rien n'a fonctionné pour les liaisons vidéo locales. Je pense que la meilleure solution serait de réparer en utilisant jQuery si vous voulez toujours utiliser des iframes.

$(document).ready(function () {
    var ownVideos = $("iframe");
    $.each(ownVideos, function (i, video) {                
        var frameContent = $(video).contents().find('body').html();
        if (frameContent) {
            $(video).contents().find('body').html(frameContent.replace("autoplay", ""));
        }
    });
});

Remarque: Il trouvera tous les iframes sur le document prêts et passera en boucle le contenu de chaque iframe, puis remplacera/supprimera l'attribut autoplay. Cette solution peut être utilisée n’importe où dans votre projet. Si vous souhaitez utiliser un élément spécifique, utilisez le code sous la fonction $.each et remplacez $(video) par votre identifiant d'élément iframe, tel que $("#myIFrameId").

0
Mayank Modi

Essayez ce code pour désactiver la lecture automatique de la vidéo.

Ça marche . Votez s'il vous plaît si vous avez terminé avec cette

<div class="embed-responsive embed-responsive-16by9">
    <video controls="true" class="embed-responsive-item">
      <source src="example.mp4" type="video/mp4" />
    </video>
</div>
0
Guru