Функция определения, если пользовательский жест требуется
есть ли способ определить, звонит лиplay()
на видео элемент разрешен без пользовательского жеста? На Android Chrome выдается это предупреждение:
Failed to execute 'play' on 'HTMLMediaElement': API can only be initiated by a user gesture.
Таким образом, на Chrome Android требуется пользовательский жест, чтобы начать воспроизведение видео, в то время как его нет на настольном Chrome. Есть ли способ определить, какое поведение я получу?
Я хочу, чтобы в моем приложении было немного другое поведение, в зависимости от того, разрешен ли программный вызов play или нет.
Я пытался использоватьModernizr.videoautoplay
, но это проверяет, еслиautoplay
свойство элемента, что не одно и то же. Это дает ложные негативы для IE11 и Edge.
Редактировать: добавленопример, Видео начнет воспроизводиться автоматически на рабочем столе Chrome и IE11 или Edge (с задержкой 3 с) в Windows 8 или 10. Для Chrome @ Android необходимо взаимодействие с пользователем (нажатие кнопки), и сообщение об ошибке можно увидеть в консоли.