Поведение HTML5 на мобильных устройствах
Я создаю сайт, где у меня есть несколько элементов <video>
(циклическая анимация), которые действуют как часть моего дизайна (а не как фактическое видео). Это хорошо работает в настольных браузерах, но у меня проблемы с мобильными устройствами.
Когда я показываю сайт на устройствах Android или iOS (т.е. Мобильный webkit), я получу внешний вид видеоигры OS и откроют видео в каком-то всплывающем окне, когда я нажимаю на них. Я знаю, что могу обойти ограничения автовоспроизведения, выполнив sth как:
window.onload = function() {
var pElement = document.getElementById("myVideo");
pElement.load();
pElement.play();
};
Но это снова откроет видео в отдельном окне...
Кто-нибудь знает о возможности эмулировать/разрешать поведение на рабочем столе на мобильных устройствах? Спасибо!
EDIT:
Разметка является базовой <video>
-syntax btw:
<video autoplay loop>
<source src="vid.mp4" type="video/mp4" />
<source src="vid.ogg" type="video/ogg" />
<source src="vid.webm" type="video/webm" />
</video>
Ответы
Ответ 1
Хмм, я не уверен в Android, но устройства iOS не могут одновременно запускать несколько видеопотоков:
Несколько одновременных аудио- или видеопотоков
В настоящее время все устройства, работающие под управлением iOS, ограничены воспроизведением одного аудио или видео в любое время. Воспроизведение нескольких видеороликов сторона, частично перекрывающаяся или полностью перекрытая - в настоящее время поддерживается на устройствах iOS. Воспроизведение нескольких одновременных аудиопотоков также не поддерживается. Вы можете изменить аудио или видео источник динамически. См. "Замена источника мультимедиа последовательно" для подробности.
Ответ 2
Нет, устройства Android или iOS (т.е. мобильный веб-кит) не могут запускать видео по своему усмотрению. Видео откроется в проигрывателе по умолчанию устройства.
Ответ 3
YouTube использует mov или mp4 с ios, чтобы загружать собственный внешний вид для видео или подключаться к своему приложению, чтобы воспроизводить видео с момента его установки на каждом устройстве ios.
Ответ 4
Зачем вам нужно windows.onload
обходить автозапуск? Если я правильно запомнил тег preload
none
<video src="vid.mov" preload="none"></video>
должен работать.
Кроме того, вы пробовали использовать Video For Everybody? Поскольку это должно быть в состоянии заставить видео играть на веб-странице, а не в ОС телефона, я полагаю, что вы можете добиться такого же эффекта на поддерживаемых устройствах.
EDIT: Что касается j08691 answer, альтернативный подход для iPhones может заключаться в разработке простого приложения для веб-просмотра для сайта для iPhone, у которого есть обходной путь для проблемы с отсутствием нескольких видео.