Saya mencoba mengontrol video HTML5 menggunakan JQuery. Saya memiliki dua klip di antarmuka tab, ada total enam tab, yang lain hanya memiliki gambar. Saya mencoba untuk membuat klip video diputar ketika tab mereka diklik dan kemudian berhenti ketika yang lain diklik.
Ini harus menjadi hal yang sederhana untuk dilakukan tetapi saya tidak bisa membuatnya berfungsi, kode yang saya gunakan untuk memutar video adalah:
$('#playMovie1').click(function(){
$('#movie1').play();
});
Saya telah membaca bahwa elemen video perlu diekspos dalam suatu fungsi untuk dapat mengendalikannya tetapi tidak dapat menemukan contoh. Saya dapat membuatnya bekerja menggunakan JS:
document.getElementById('movie1').play();
Nasihat apa pun akan bagus. Terima kasih
sumber
$('video').each(this.play());
untuk memainkan semua;$('video').each(this.pause());
untuk menjeda semua.each()
adalah fungsi jQuery, yang dilewatkan ke dalamnya adalah fungsi javascript, yang diterapkan ke setiap elemen. Karena setiap elemen ditangani,this
mewakili elemen itu..get(0)
dengan[0]
. Jadi$('video')[0].play();
atau untuk id tertentu$('#videoId')[0].play();
.Beginilah cara saya membuatnya berfungsi:
Semua tag HTML5 saya memiliki kelas 'myHTMLvideo'
sumber
this.paused ? this.play() : this.pause();
Anda dapat melakukan
sumber
Mengapa Anda perlu menggunakan jQuery? Solusi yang Anda usulkan berfungsi, dan mungkin lebih cepat daripada membangun objek jQuery.
sumber
play
objek jQuery).movie1
melalui$('movie1')
untuk tindakan jQuery lainnya, maka itu baik-baik saja; Namun, jika Anda melakukannya hanya di satu tempat ini, Anda akan menemukan beberapa kehilangan kinerja. Ini mungkin tidak cukup terlihat, tetapi saya suka mengoptimalkan banyak.Untuk menjeda beberapa video, saya menemukan bahwa ini berfungsi dengan baik:
Ini bisa dimasukkan ke dalam fungsi klik yang cukup berguna.
sumber
Sebagai perpanjangan dari jawaban lonesomeday, Anda juga dapat menggunakan
Perhatikan bahwa tidak ada fungsi jQuery get () atau eq () dipanggil. Array DOM digunakan untuk memanggil fungsi play (). Ini jalan pintas yang perlu diingat.
sumber
Saya suka yang ini:
Semoga ini bisa membantu.
sumber
Saya menggunakan FancyBox dan jQuery untuk menyematkan video. Berikan ID.
Mungkin bukan solusi TERBAIK yang bisa beralih bermain / jeda berbeda - tetapi mudah bagi saya dan IT BEKERJA! :)
Dalam
`
sumber
Ini adalah metode mudah yang bisa kita gunakan
pada fungsi klik tombol jquery
Terima kasih
sumber
Sama seperti catatan, pastikan Anda memeriksa apakah browser mendukung fungsi video, sebelum Anda mencoba menjalankannya:
Itu akan mencegah kesalahan JavaScript pada browser yang tidak mendukung tag video.
sumber
Oleh JQuery menggunakan penyeleksi
Dengan Javascript menggunakan ID
ATAU
sumber
Gunakan ini..
$('#video1').attr({'autoplay':'true'});
sumber
Saya juga membuatnya bekerja seperti ini:
sumber
@loneSomeday menjelaskannya dengan indah, di sini satu solusi yang mungkin juga memberi Anda ide bagus bagaimana mencapai fungsi play / pause
putar / jeda video saat klik
sumber
sumber
sumber
sumber