Vimeo API: кнопка воспроизведения и несколько видео - PullRequest
2 голосов
/ 29 мая 2011

У меня проблемы. Я только что обнаружил, что вы можете управлять vimeo с помощью js, и теперь я пытаюсь создать кнопку воспроизведения, которая начнет воспроизведение видео vimeo.

Проблема в том, что у меня есть несколько видео на одной странице. Я взял файл примера / игровой площадки (отсюда http://player.vimeo.com/playground / https://github.com/vimeo/player-api/tree/master/javascript) и удалил ненужную мне функциональность, однако не могу понять, как подключить кнопку воспроизведения с определенным видео.

Это то, что я имею до сих пор

HTML:

<iframe id="player_1" src="http://player.vimeo.com/video/7100569?api=1&amp;player_id=player_1" width="540" height="304" frameborder="0"></iframe>
<div class="intro">
     <span class="hide">Play 1</span>
</div>
<iframe id="player_2" src="http://player.vimeo.com/video/7100569?api=1&amp;player_id=player_2" width="540" height="304" frameborder="0"></iframe>
<div class="intro">
    <span class="hide">Play 2</span>
</div>

JS:

            var vimeoPlayers = document.querySelectorAll('iframe'),
                player;

            for (var i = 0, length = vimeoPlayers.length; i < length; i++) {
                player = vimeoPlayers[i];
                $f(player).addEvent('ready', ready);
            }


            function addEvent(element, eventName, callback) {
                if (element.addEventListener) {
                    element.addEventListener(eventName, callback, false);
                }
                else {
                    element.attachEvent(eventName, callback, false);
                }
            }


            function ready(player_id) {
                // Keep a reference to Froogaloop for this player
                var container = document.getElementById(player_id).parentNode.parentNode,
                    froogaloop = $f(player_id);

                function setupSimpleButtons() {
                    var buttons = container.querySelector('div.intro'),
                        playBtn = buttons.querySelector('.hide');

                    // Call play when play button clicked
                    addEvent(playBtn, 'click', function() {
                        froogaloop.api('play');
                    }, false);



                }

                setupSimpleButtons();
            }
        })();

Если у меня есть код, который не нужен, пожалуйста, помогите мне удалить его. Большое спасибо.

Ответы [ 2 ]

0 голосов
/ 18 августа 2011

Я нашел способ сделать это намного проще, вы можете увидеть пример здесь: http://labs.funkhausdesign.com/examples/vimeo/froogaloop2-api-basics.html

0 голосов
/ 30 мая 2011

Ваша функция ready() вызывается один раз для каждого игрока Vimeo. Вам нужно изменить, какой объект подключен с помощью кнопки addEvent. Для этого вам, вероятно, нужно поместить атрибуты id на сами кнопки.

...