Ich versuche, HTML5-Videos mit JQuery zu steuern. Ich habe zwei Clips in einer Oberfläche mit Registerkarten, es gibt insgesamt sechs Registerkarten, die anderen haben nur Bilder. Ich versuche, die Videoclips abzuspielen, wenn auf die Registerkarte geklickt wird, und dann anzuhalten, wenn auf eine der anderen geklickt wird.
Dies muss eine einfache Sache sein, aber ich kann es nicht zum Laufen bringen. Der Code, den ich zum Abspielen des Videos verwende, lautet:
$('#playMovie1').click(function(){
$('#movie1').play();
});
Ich habe gelesen, dass das Videoelement in einer Funktion belichtet werden muss, um es steuern zu können, aber kein Beispiel finden kann. Ich kann es mit JS zum Laufen bringen:
document.getElementById('movie1').play();
Jeder Rat wäre toll. Vielen Dank
quelle
$('video').each(this.play());
um alle zu spielen;$('video').each(this.pause());
alles pausieren.each()
ist eine jQuery-Funktion, an die eine Javascript-Funktion übergeben wird, die auf jedes Element angewendet wird. Stellt dieses Element dar,this
wenn jedes Element behandelt wird ..get(0)
mit[0]
. Also$('video')[0].play();
oder für eine bestimmte ID$('#videoId')[0].play();
.So habe ich es geschafft:
Alle meine HTML5-Tags haben die Klasse 'myHTMLvideo'.
quelle
this.paused ? this.play() : this.pause();
Du kannst tun
quelle
Warum müssen Sie jQuery verwenden? Ihre vorgeschlagene Lösung funktioniert und ist wahrscheinlich schneller als das Erstellen eines jQuery-Objekts.
quelle
play
ein jQuery-Objekt aufrufen können ).movie1
durch$('movie1')
für andere jQuery-Aktionen instanziiert haben , ist dies in Ordnung. Wenn Sie dies jedoch nur an diesem einen Ort tun, werden Sie einen Leistungsverlust feststellen. Es mag nicht auffällig genug sein, aber ich mag es sehr zu optimieren.Beim Anhalten mehrerer Videos habe ich festgestellt, dass dies gut funktioniert:
Dies kann in eine Klickfunktion gebracht werden, die sehr praktisch ist.
quelle
Als Erweiterung der Antwort von lonesomeday können Sie auch verwenden
Beachten Sie, dass keine jQuery-Funktion get () oder eq () aufgerufen wird. Das Array von DOM dient zum Aufrufen der Funktion play (). Es ist eine Abkürzung zu beachten.
quelle
Ich mag dieses:
Ich hoffe es hilft.
quelle
Ich benutze FancyBox und jQuery, um ein Video einzubetten. Gib ihm einen Ausweis.
Vielleicht könnte nicht die BESTE Lösung das Abspielen / Anhalten anders umschalten - aber einfach für mich und ES FUNKTIONIERT! :) :)
In dem
`
quelle
Dies sind die einfachen Methoden, die wir verwenden können
Klicken Sie auf die Schaltfläche jquery
Vielen Dank
quelle
Stellen Sie als Hinweis sicher, dass Sie überprüfen, ob der Browser die Videofunktion unterstützt, bevor Sie versuchen, sie aufzurufen:
Dadurch werden JavaScript-Fehler in Browsern verhindert, die das Video-Tag nicht unterstützen.
quelle
Von JQuery mit Selektoren
Mit Javascript unter Verwendung der ID
ODER
quelle
benutze das..
$('#video1').attr({'autoplay':'true'});
quelle
Ich habe es auch so gemacht:
quelle
@loneSomeday hat es wunderschön erklärt, hier eine Lösung, die Ihnen auch eine gute Vorstellung davon geben kann, wie Sie die Wiedergabe- / Pausenfunktionalität erreichen können
Wiedergabe / Pause des Videos beim Klicken
quelle
quelle
quelle
quelle