Javascript приостановить все другие видео Vimeo - PullRequest
0 голосов
/ 24 декабря 2011

Мне бы хотелось, чтобы при воспроизведении одного видео Vimeo остальные на странице были приостановлены.

Я пытался использовать API Froogaloop, но мне не помогло.

Используя текущий код, я заработал, чтобы при переключении вкладок можно было приостановить все видео. Теперь я хочу сделать так, чтобы при воспроизведении одного видео остальные делали паузу.

В настоящее время прослушиватели событий для определения «воспроизведения» работают неправильно. Я полагаю, что это потому, что они должны находиться в $(document).ready(), но они застряли в первой <script> области, инкапсулированной в $(function(){ }), которая, по моему мнению, препятствует взаимодействию.

Код можно найти здесь: www.proclinica.com / preview

Это код, который я изменил для управления vimeo, и вы можете увидеть, как работают слушатели событий: http://jsfiddle.net/GxwEX/5/

Может ли кто-нибудь хотя бы помочь мне заставить слушателей событий работать на сайте proclinica?

1 Ответ

0 голосов
/ 24 декабря 2011

Прежде всего, я не совсем уверен, что то, что вы пытаетесь сделать, не работает. В вашем коде (на вашем сайте) у вас есть это:

$('.client_logo').click(function() {
    post('pause');
});

Когда я нажимаю на один из логотипов, любое работающее видео, кажется, останавливается очень хорошо.

Если вы пытаетесь приостановить воспроизведение всех видео, когда пользователь запускает другое; Я не думаю, что видел где-нибудь в вашем коде (ни в JSFiddle, ни на сайте), где вы пытаетесь это сделать. Если у вас есть; Можете ли вы показать нам, что вы пытались далеко?

И, наконец, просто ответить хотя бы на одну часть вашего вопроса ... $(...) на самом деле просто хороший ярлык для $(document).ready(...).

Изменить:

Из документации :

Если вы встраиваете и управляете несколькими игроками на странице, вы можете дать каждому игроку player_id, чтобы разделить его:

http://player.vimeo.com/video/VIDEO_ID?api=1&player_id=vimeoplayer

Если вы установили его, player_id передается любым слушателям событий, например:

function onMessageReceived(e) {
    var data = JSON.parse(e.data);
    var player_id = e.player_id;

    // Do stuff
}

Вы можете использовать это, чтобы определить, какое видео было запущено, и перезапустить его после того, как вы приостановили остальные.

...