Тег HTML5 предлагает пользователю кнопку для включения и выключения полноэкранного режима в Safari для мобильных устройств (iOS).
Я хотел бы захватить и обработать это действие пользователя, но, похоже, оно не вызывает событие при нажатии кнопки, и игрок переходит в полноэкранный режим.
Вот ссылка на API Safari для класса HTMLVideoElement:
Мы можем легко узнать, когда видео приостановлено в Javascript, например:
function onload()
{
var player = document.getElementsByTagName("video")[0];
player.addEventListener('play',videoPlayHandler,false);
player.addEventListener('pause',videoPauseHandler,false);
}
Однако у них, похоже, нет событий, когда видео входит в полноэкранный режим.
Мы можем принудительно включить видео в полноэкранный режим в ответ на действие пользователя, вызвав webkitEnterFullscreen(), но это мне не помогает. Мне нужно знать, когда пользователь нажимает на полноэкранную кнопку.
Скрытие элементов управления и замена их собственными настраиваемыми элементами управления звучит как действительно длинное завитое решение.
Другим вариантом, о котором я могу думать, является установка события синхронизации, постоянно проверяющего свойство webkitDisplayingFullscreen, но это выглядит как плохое в плане управления памятью.
Может ли кто-нибудь предложить лучшее решение?