如何为<video>元素使用替代内容

时间:2018-09-29 22:19:41

标签: php

我的意思是我应该怎么做才能不显示数据库行中缺少的视频文件?我是php新手,这是我的代码。

<video width="100%" controls preload="auto">
 <source src="postfiles/<?php echo $res['file']; ?>" 
   type='video/webm;codecs="vp8, vorbis"' />
 <source src="postfiles/<?php echo $res['file']; ?>"
   type='video/mp4;codecs="avc1.42E01E, mp4a.40.2"'/>
</video>

1 个答案:

答案 0 :(得分:1)

the <video> element的内容可以在没有支持或没有内容的情况下用作备用。就像您有第二个视频编解码器以防缺少第一个视频编解码器一样,您也可以具有图像或文本,以防根本不支持视频或没有视频播放。也许是这样的:

<video width="100%" controls preload="auto">
    <source src="postfiles/<?=$res['file']?>" type='video/webm;codecs="vp8, vorbis"' />
    <source src="postfiles/<?=$res['file']?>" type='video/mp4;codecs="avc1.42E01E, mp4a.40.2"'/>
    <p class="error">No video found</p>
</video>

或者,如果您想阻止客户端尝试下载不存在的视频,则:

<video width="100%" controls preload="auto">
<?php if (!empty($res["file"])):?>
    <source src="postfiles/<?=$res['file']?>" type='video/webm;codecs="vp8, vorbis"' />
    <source src="postfiles/<?=$res['file']?>" type='video/mp4;codecs="avc1.42E01E, mp4a.40.2"'/>
    <p>No browser support for videos</p>
<?php else:?>
    <p class="error">No video found</p>
<?php endif;?>
</video>