Кнопка Vimeo Player не отображается

У меня есть следующий скрипт в <body>:

<script>
(function($) {
        var buttonShowed = false;
        var vPlayer = new Vimeo.Player($('#video0 iframe'));
        vPlayer.on('timeupdate', function(time) {
            if ((time.seconds >=580) && (!buttonShowed) ) {
                buttonShowed = true;
              $('#delayed-button') .css('visibility','visible');
            }
        });

})(jQuery);
</script>

В <head>:

<script src="https://player.vimeo.com/api/player.js"></script>

Видео Vimeo получило идентификатор video0, а кнопка получила идентификатор delayed-button.

На моем телефоне кнопка отображается 580 секунд, но в разных браузерах (Chrome, Opera, Safari) на моем ПК кнопка не отображается.

Я действительно не знаю, почему, вы можете мне помочь?


person Zwei Rad    schedule 17.12.2016    source источник
comment
Почему пробел между $('#delayed-button') и .css()?   -  person Ionut    schedule 17.12.2016


Ответы (1)


Попробуйте использовать элемент div вместо iframe, и это должно сработать. Кажется, что timeupdate не работает с iframe.

Я сделал вам рабочую скрипку здесь. Полный код:

var buttonShowed = false;
 var vPlayer = new Vimeo.Player($('#video0 #player'));
 vPlayer.on('timeupdate', function(time) {
   console.log(time.seconds);
   if ((time.seconds >= 570) && (!buttonShowed)) {
     buttonShowed = true;
     $('#delayed-button').css('visibility', 'visible');
   }
 });
#delayed-button{
  visibility: hidden;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src='https://player.vimeo.com/api/player.js'></script>
<div id='video0'>
  <div data-vimeo-id="76979871" data-vimeo-autoplay="true" id="player"></div>
</div>
<div id='delayed-button'>
  button
</div>

person Ionut    schedule 17.12.2016
comment
@ZweiRad Потрясающе. Пожалуйста, не забудьте принять ответ, если он вам помог. - person Ionut; 19.12.2016
comment
Это то, что мне было нужно! БОЛЬШОЕ Спасибо, лонут :) сработало как шарм. Но иногда кнопка по-прежнему не отображается... не знаю, может это из-за файлов cookie или чего-то еще... - person Zwei Rad; 19.12.2016
comment
Когда вы имеете в виду иногда, можете ли вы привести пример? В каком браузере? В вашем коде я не вижу файлов cookie. Так что это не должно быть проблемой. Это может быть проблема с API. - person Ionut; 19.12.2016
comment
Спасибо за ответ, Ионут! Итак, я использую iOS с Chrome, но также в Opera и Safari он не работает в определенное время дня ... может быть, он работал, а через 20-30 минут больше не будет работать только в Firefox ... - person Zwei Rad; 19.12.2016
comment
@ZweiRad, поэтому я провел небольшое исследование и наткнулся на эту ссылку stackoverflow.com/questions/35967342/ . Смотрите ответ этого парня. Может поможет. Я думаю, что вы ничего не можете сделать в этом случае. Это зависит от устройства. - person Ionut; 19.12.2016
comment
очень мило с твоей стороны помочь мне с этим, Ионут. Рад, что некоторые люди в сети такие милые. Поэтому я попробовал некоторые другие устройства, такие как смартфон, ipad и другие - похоже, проблема с ios (mac / imac или другими) ... надеюсь, у большинства из них есть Windows pcs: P - person Zwei Rad; 19.12.2016
comment
еще раз спасибо, что выручили меня, я выясню, как с этим справиться, возможно, кнопка с задержкой не лучшее решение для этого! - person Zwei Rad; 19.12.2016
comment
@ZweiRad, пожалуйста. Кажется, я когда-то сталкивался с похожей проблемой с чем-то еще на iOS. Это был таймер, который не работал на iOS при загрузке страницы. Для работы требовалось взаимодействие с пользователем. Как событие клика. Так что попробуйте сделать то, что вы делаете сейчас, одним нажатием кнопки. Может быть, это поможет. - person Ionut; 19.12.2016