Я играл вокруг с видео тегом HTML5, и я озадачен относительно того, как лучше всего ухудшиться, когда Вы не можете поддерживать кодек?
Для более старых браузеров (или IE), которые не поддерживают видео тег во всем этом вполне, является прямым:
<video width="320" height="240">
<source src="vid.ogv" type='video/ogg'>
<source src="vid.mp4" type='video/mp4'>
<object>
<!-- Embed Flash video here to play mp4 -->
<object>
</video>
Они провалятся и получат версию Flash (или другая альтернатива, такая как изображение!)
Как насчет того, когда браузер поддерживает тег, но не кодек - Как FireFox 3.5, например - и я не могу поддерживать OGG (возможно, потому что у меня уже есть обширные архивы H.264):
<video width="320" height="240">
<source src="vid.mp4" type='video/mp4'>
<object>
<!-- Embed Flash video here to play mp4 -->
<object>
</video>
Все я вхожу в FireFox 3.5, является серым полем с x в нем. Это не точно большой пользовательский опыт для пользователей FireFox! Я могу только думать об использовании JavaScript, чтобы проверить на FF3.5 и изменить DOM!! это действительно плохое старое снова и снова!... или есть ли некоторая часть спецификации, я пропускаю подобный тег 'novideo'?
Важной частью постепенной деградации являются возможности запросов ... Погружение в HTML5 - отличное чтение ... в частности, посмотрите раздел видео . Соответствующий код здесь:
function supports_h264_baseline_video() {
if (!supports_video()) { return false; }
var v = document.createElement("video");
return v.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"');
}
Примечание: это требует проверки DOM, но для возможностей, а не для подписи браузера. Это правильный поступок : -)
Как только вы узнаете, поддерживает ли браузер, вы можете показать свой видеотег, вызвать лайтбокс или перенаправить по своему усмотрению.