HTML5 видео фоновый резерв - PullRequest
0 голосов
/ 22 июля 2011

Я попробовал этот код, и он, похоже, не работает. Я пытаюсь создать запасной вариант, поэтому, если браузер, не поддерживающий html5 (т.е. / safari), загружает веб-сайт, он будет показывать другой контент без видео.

<?php if (Modernizr.video) {
<video id="video" src="video.ogv" autoplay />
}
else 
{
<img src="text.jpg">
}?>

Любая обратная связь была бы отличной. Спасибо

1 Ответ

0 голосов
/ 22 июля 2011

Похоже, что проблема заключается в путанице того, что делается на стороне сервера, и того, что делается на стороне клиента. Modernizr - это библиотека JavaScript.Размещение его кода в блоках PHP ничего не сделает для вас, поскольку PHP - это серверная технология, а JavaScript - нет.

Альтернативой может быть использование PHP для предоставления JavaScript необходимых данных, а затем использование JavaScript дляопределите HTML-код для отображения.

<script>
if (Modernizr.video) {
    document.write('<video id="video" src="<?php echo 'video.ogv'; ?>" autoplay />');
} else {
    document.write('<img src="<?php echo 'text.jpg'; ?>" />');
}
</script>

Вы должны поместить этот код в HTML-код, где вы хотите показывать видео / изображение.Обратите внимание, что мы используем PHP для отображения имен файлов.Это позволяет вам динамически предоставлять имена файлов.Чтобы воспользоваться возможностями HTML5, я бы порекомендовал поместить имена файлов в атрибуты data- * HTML5, а затем использовать JavaScript для одновременной обработки всех видео.

<div class="has-video" data-video="<?php echo 'video.ogv'; ?>" data-image="<?php echo 'text.jpg'; ?>"></div>
...