Во-первых, я хотел бы показать вам кусок кода. Код представляет собой простой (старый стиль) встраивания фильма YouTube на ваш сайт:
<object width="560" height="315">
<param name="movie" value="http://www.youtube.com/v/-pGYHDcQDwA?version=3&hl=da_DK"></param>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/-pGYHDcQDwA?version=3&hl=da_DK" type="application/x-shockwave-flash" width="560" height="315" allowscriptaccess="always" allowfullscreen="true"></embed>
</object>
Это довольно просто и работает.
Мое текущее решение
У меня также есть видеоплеер, который также позволяет встраивать. Код для встраивания в основном такой же:
<object width="387" height="316" align="top">
<param name="movie" value="http://example.com/embedplayer.swf"></param>
<param name="salign" value="lt" /></param>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"></param>
<param name="wmode" value="transparent"></param>
<embed src="http://example.com/embedplayer.swf" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" wmode="transparent" salign="lt" width="387" height="316"></embed>
</object>
Мой выпуск
Я бы хотел, чтобы зритель мог просматривать мои видео на iPad или iPhone.
Форматы файлов не являются проблемой, поскольку видео были закодированы в несколько необходимых форматов.
Мне бы хотелось, чтобы функциональность была похожа на код для вставки YouTube. При просмотре страницы с кодом встраивания YouTube на iPad / iPhone появляется что-то еще (я думаю, это изображение со ссылкой на правильный формат файла).
При просмотре моего собственного кода встраивания на iPad / iPhone это явно не работает, так как я ссылаюсь непосредственно на SWF-файл.
Что я пробовал?
Пытаясь выяснить, как и для чего служит встраивание / объект YouTube, я просто попытался выполнить несколько простых запросов GET к URL-адресу YouTube, указанному в коде встраивания (http://www.youtube.com/v/-pGYHDcQDwA?version=3&hl=da_DK), и это дало мне в основном 404 (из-за плохих заголовков) или новый источник HTML с новым объектом Flash.
Другими словами, я не смог вручную воспроизвести то, что подается для iPad / iPhone.
Возможное / альтернативное решение
YouTube также позволяет использовать новый метод встраивания.
Это выглядит так:
<iframe width="560" height="315" src="http://www.youtube.com/embed/-pGYHDcQDwA" frameborder="0" allowfullscreen></iframe>
Это довольно прозрачно для меня. Встраивание еще одной страницы в iframe позволяет внешней странице выполнять проверки, что позволяет предоставлять клиенту нужный контент (HTML5, Flash или что-то еще). Ничего страшного.
Вопросы
- Как это работает для старого кода встраивания YouTube? Использование тегов embed / object для меня должно встроить какой-то определенный объект, но кажется, что код встраивания YouTube допускает различный контент в элементах embed / object.
- Будет ли новое (альтернативное решение) лучшим способом сделать это? Это кажется гибким и учитывает будущее легкое обслуживание. Но я всегда слышу, что iframes - это нет-нет.