Убрать двойной клик по превью видео

134
09 августа 2019, 02:50

Есть такой html:

<div class="youtube"
 id="kSFa21iffmvy"
 data-params="modestbranding=1&showinfo=0&controls=1&vq=hd720">
 </div>

И такой jquery:

$(function() {
        $(".youtube").each(function() {
            // Зная идентификатор видео на YouTube, легко можно найти его миниатюру
            $(this).css('background-image', 'url(http://i.ytimg.com/vi/' + this.id + '/sddefault.jpg)');
            // Добавляем иконку Play поверх миниатюры, чтобы было похоже на видеоплеер
            $(this).append($('<div/>', {'class': 'play'}));
            $(document).delegate('#'+this.id, 'click', function() {
                // создаем iframe со включенной опцией autoplay
                var iframe_url = "https://www.youtube.com/embed/" + this.id + "?autoplay=1&autohide=1";
                if ($(this).data('params')) iframe_url+='&'+$(this).data('params');
                // Высота и ширина iframe должны быть такими же, как и у родительского блока
                var iframe = $('<iframe/>', {'frameborder': '0', 'src': iframe_url,'allowfullscreen':''})
                // Заменяем миниатюру HTML5 плеером с YouTube
                $(this).replaceWith(iframe);
            });
        });
    });

Суть вот в чем, на странице размещается несколько роликов с ютуба, я попытался ускорить время загрузки страницы, т.к. она грузилась довольно долго. Нашел такое решение, вместо iframe выводится сначала превьюшка видео. Но проблема в том, что при просмотре страницы с телефона приходится 2 раза кликать на видео, один раз убирается превью, а второй клик запускает видео. На пк же все работает отлично, при первом клике картинка подменяется на Iframe и видео запускается. Как исправить эту ситуацию, чтобы на телефоне не нужно было кликать по 2 раза?

Answer 1

Q: YouTube Autoplay not working

https://stackoverflow.com/a/50272974/4794368

It's not working since April of 2018 because Google decided to give greater control of playback to users. You just need to add &mute=1 to your URL. Autoplay Policy Changes

вольный перевод:

с апреля 2018 гугл изменила политику смотри Autoplay Policy Changes. чтобы видео заработало просто добавь к URL &mute=1.

от переводчика:
на сколько я понимаю, теперь автозапуск видео только с выключенным звуком.

UPD:

https://stackoverflow.com/a/50339171/4794368

However, if you wish to enable autoplay with sound you should add allow="autoplay" to your embedded <iframe>.

<iframe type="text/html" src="https://www.youtube.com/embed/-ePDPGXkvlw?autoplay=1" frameborder="0" allow="autoplay"></iframe>
READ ALSO
Сумма в зависимости от значения

Сумма в зависимости от значения

есть 2 слайдера(input range) подскажите, как в зависимости от значений month и cash менять значение формулыДумал функцию создать и передавать параметры,...

96
Выводить данные с БД mysql на график (библиотека D3)

Выводить данные с БД mysql на график (библиотека D3)

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

110
Webpack, Typescript, запуск кода после загрузки DOM

Webpack, Typescript, запуск кода после загрузки DOM

Вопрос заключается в следующем: Есть класс ts, например меню, элементы которого являются приватным свойством, в конструкторе они берутся через...

94
Как правильно составить html pattern

Как правильно составить html pattern

В поле задаю тип string, и нужно чтобы проверялось на количество символов, максимально 7 штук, и чтобы можно было вводить только цифры в виде строкиКак...

126