Приостановить все видео Vimeo с API?
Я врезался в стену и не могу понять, как заставить это работать. С расширенным API Vimeo я добавляю все видео из аккаунта с миниатюрами. При нажатии на миниатюру видео показывается выше, а нажатие на другую миниатюру скрывает текущее видео. Проблема в том, что видео продолжает воспроизводиться, даже если оно скрыто. Я потратил несколько часов на просмотр API и не могу заставить его остановиться, когда он скрыт.
var iframe = $('.video')[0];
$('.thumbnail a').click(function(e) {
$f(iframe).api('pause');
});
Приведенный выше код приостанавливает только первое видео. Если я изменю число [0] на [1], то второе видео останавливается, когда вы нажимаете на другую миниатюру. У кого-нибудь есть мысли? Я использую Froogaloop в приведенном выше коде.
2 ответа
Вы можете использовать этот код, чтобы приостановить все видео YouTube и Vimeo на странице:
$('iframe').each(function() {
this.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}', '*');
this.contentWindow.postMessage('{"method":"pause","value":""}', '*');
});
Я использовал это с JQuery:
<script type="text/javascript" src="http://a.vimeocdn.com/js/froogaloop2.min.js"></script>
<script type="text/javascript">// <![CDATA[
function pauseAll() {
$('iframe[src*="vimeo.com"]').each(function () {
$f(this).api('pause');
});
}
// ]]></script>
используйте его на клик.
<a href="#" onclick="pauseAll(); return false;">pause all</a>