it-swarm.com.de

Deaktivieren der automatischen Wiedergabe für lokales Video in iframe

Wie kann ich die automatische Wiedergabe für Videos deaktivieren, wenn src von meinem lokalen PC stammt?

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

Ich habe folgendes versucht, aber es funktioniert nicht: 

  • 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

Wenn Sie HTML5 verwenden, ist die Verwendung des Tags Video für diesen Zweck geeignet.

Sie können das Video-Tag auf diese Weise für keine automatische Wiedergabe verwenden:

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

Um die automatische Wiedergabe zu aktivieren,

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

Was denkst du über video-Tag? Wenn Sie kein iframe-Tag verwenden müssen, können Sie stattdessen das video-Tag verwenden. 

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

Sie sollten das autoplay-Attribut nicht in Ihrem video-Tag verwenden, um die automatische Wiedergabe zu deaktivieren. 

2
Mindsers

Sie können die Quelle des Players beim Laden der Seite als leere Zeichenfolge festlegen. Auf diese Weise müssen Sie nicht zum Tag video wechseln.

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

Wenn Sie ein Video abspielen möchten, ändern Sie einfach das src-Attribut. Beispiel:

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

Ersetzen Sie dafür den iframe:

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

Ich habe alle möglichen Lösungen ausprobiert, aber für lokale Videobindungen funktionierte nichts. Ich glaube, die beste Lösung wäre, das Problem mit jQuery zu beheben, wenn Sie noch iframes verwenden möchten.

$(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", ""));
        }
    });
});

Hinweis: Es findet alle iframes im Dokument bereit und durchläuft jeden iframe-Inhalt und ersetzt/remove das Attribut autoplay. Diese Lösung kann überall in Ihrem Projekt verwendet werden. Wenn Sie ein bestimmtes Element ausführen möchten, verwenden Sie den Code unter $.each-Funktion und ersetzen Sie $(video) durch Ihre iframe-Element-ID wie $("#myIFrameId").

0
Mayank Modi

Versuchen Sie diesen Code, um die automatische Wiedergabe von Videos zu deaktivieren.

Es funktioniert . Bitte stimmen Sie ab, wenn Sie damit fertig sind

<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