Встроенное видео Facebook не воспроизводится при нажатии

У меня проблема с видео facebook, встроенным в мой пост. Мой клиент хотел, чтобы я следовал этому методу: https://medium.com/@BenBillups/facebook-video-embeds-that-actually-work-57037f8cdcf3

Я выполнил все, кроме кода PHP, потому что это не требовалось моему клиенту. Теперь что происходит. Когда страница загружается, появляется кнопка воспроизведения для запуска видео. При нажатии все работает нормально. Он воспроизводит видео, но только на настольных компьютерах. Событие клика запускается на мобильных устройствах и планшетах. Но это не запускает видео. Пожалуйста, взгляните на https://candylish.com/mix-and-match-swirl-cookies/, а также проверьте в мобильном телефоне. Вы увидите разницу. Короче говоря, вам нужно дважды щелкнуть на мобильном телефоне, чтобы запустить видео. Пожалуйста, помогите мне разобраться в этом. Спасибо :)

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
975
1

Ответы 1

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

//Autoplay
FB.Event.subscribe('xfbml.ready', function(msg) {
    if (msg.type === 'video') {
        msg.instance.play();
    }
});

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

In short, you've to click twice in mobile to start video.

Этот второй щелчок - это всего лишь "совсем другое животное" ... это происходит на кнопке воспроизведения родной (теперь) встроенного социального плагина. Другой скрипт на данный момент больше не задействован, и этот щелчок является прямым взаимодействием с пользователем, которое запускает воспроизведение видео, поэтому ему разрешено работать. Это не вложено ни в какие асинхронные или обратные вызовы, это прямо нажмите => запустить воспроизведение.

Я не думаю, что вы найдете какой-либо пример использования этой техники, где это будет работать по-другому.

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


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

Другие вопросы по теме